[英]How can I set the width of an element based on the width of another element?
我试图弄清楚如何使元素的宽度动态化。
我有一个width: 350px
的侧边栏,然后当一个全宽模式出现时,该侧边栏应该仍然可见。
这是模态的:
position: fixed;
top: 0;
right: 0;
z-index: 1050;
width: 73%;
height: 100%;
outline: 0;
宽度设置为73%;
它现在有效,侧边栏始终可见,但如果侧边栏改变其宽度会发生什么?
我正在使用反应。 我想这应该用 JavaScript 来完成。
我应该怎么做才能达到我的需要?
您可以使用calc() (只是 css ),如:
width: calc(100% - 350px);
其中350px
是侧边栏的宽度。
如果侧边栏的宽度发生变化,您需要获取新宽度并将350px
替换为变量 holdign 新宽度的值。
我觉得您可能只需要获取该侧边栏的宽度,获取整体 window 的宽度,然后做一些简单的数学运算来确定您需要将模态的宽度设置为什么。 但是,您还需要考虑 window 调整大小。 因此,它可能与此类似。
setModalSize();
$('window').on('resize', function() {
setModalSize();
}
function setModalSize() {
var windowWidth = $('window').width(),
sidebarWidth = $('#sidebar').css('width');
$('#modal').css('width', (windowWidth - sidebarWidth));
}
有几种不同的方法来拉元素的宽度。 我已将它们包含在此快速代码示例中。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.