我正在寻找有关如何使用浏览器窗口的大小动态更改 div 大小的建议。我尝试过使用 css 并且无法使用它,因为我不能使用百分比值。我需要 div 的大小为 (windowSize - 100)/3。任何建议都会非常感谢
问问题
6393 次
3 回答
2
CSS有一个叫做calc()
可以做到这一点的东西:
div {
width: calc((100% - 100px) / 3);
}
唯一真正的限制是 IE8 或更早版本或 Opera 不支持它。 http://caniuse.com/#feat=calc
但是,可以通过利用其他属性来解决此问题。如果填充导致问题,请使用box-sizing: border-box
(必要的前缀)。如果元素必须全部出现在同一行中,display: table-cell
可能会有一些用处:
div.container {
display: table;
width: 100%;
}
div.container div {
display: table-cell;
}
<div class="container">
<div>a</div>
<div>b</div>
<div>c</div>
</div>
于 2013-04-04T17:19:09.683 回答
0
您可以得到window.innerHeight
and ,进行计算,然后明确window.innerWidth
设置 s 的宽度和高度:div
$("#mydiv").css("width", (window.innerWidth - 100)/3);
...
于 2013-04-04T17:06:12.657 回答
0
你可以用css来实现。当然,在某个价格上,div 不会有块行为和其他一些依赖于布局的情况。
jsfiddle:示例
HTML 示例:
<body>
<div class="minus100">
<div>One third</div>
</div>
</body>
CSS:
div.minus100 {
position:fixed;
/* or absolute; */
top:0;
left:50px;
right:50px;
bottom:0;
background-color:blue;
}
div.minus100 div:first-child{
width:33.3%;
height:100%;
color:#fff;
background-color:navy;
}
于 2013-04-04T17:18:35.973 回答