有人可以告诉我如何使左侧的 div 填满剩余空间,而不必固定右侧 div 的大小吗?
我想要以下示例的完全相反效果:
.left {float: left; border: 1px solid blue;}
.right {overflow: hidden; border: 1px solid blue;}
右侧 div 应该只占用其所需的大小,左侧 div 应占据所有剩余空间。
float:right;
,然后左侧的 div 必须保持原样,以便可以使用其完整可用宽度,但是由于您希望右侧的 div 是固定的,因此必须首先放置它。<div id="parentDiv">
<div id="rightFixedDiv"></div>
<div id="leftDynamicDiv></div>
</div>
CSS:
#rightFixedDiv
{
float:right;
border-style:solid;
width:100px;
height:200px;
}
#leftDynamicDiv
{
border-style:solid;
background-color:blue;
overflow:hidden;
height:200px;
}
请查看这个链接,它展示了固定宽度为100px的样式:http://jsfiddle.net/dkGbd/ 固定宽度为200px的样式:http://jsfiddle.net/eESTZ/
如果你想要相反的效果,请把左边的div放在前面,并给它添加float:left;
属性。
下面是一个演示例子: http://jsfiddle.net/UShek/
大部分工作就是反转你在这里所做的css和html顺序。浮动元素必须始终排在第一位。
<div class="right">this is the right div</div>
<div class="left">left div</div>
.right {
float: right;
background: #fef;
}
.left {
display: block;
background: #ffe;
}
更新: 这里提供代码演示
我认为最有效的方法是使用“display:flex”,这是一种新的CSS 3方法。你可以搜索了解更多关于这个令人惊奇的显示方式,我从中受益匪浅。 ;)