我有两个浮动列并排显示。用户可以隐藏/折叠其中一个列。在这种情况下,我希望另一个列扩展以适应整个容器。
这是否可以使用CSS实现?
总之,是否可以使浮动元素扩展到其容器的大小? 即使元素被浮动,如果它具有“width:auto”,它也应该扩展。至少我认为应该这样工作。
我有两个浮动列并排显示。用户可以隐藏/折叠其中一个列。在这种情况下,我希望另一个列扩展以适应整个容器。
这是否可以使用CSS实现?
总之,是否可以使浮动元素扩展到其容器的大小? 即使元素被浮动,如果它具有“width:auto”,它也应该扩展。至少我认为应该这样工作。
不,我认为被接受的答案实际上并不起作用。我刚刚尝试了同样的事情,这是解决方案...
.left {
float: left;
}
.right {
overflow: hidden;
/* don't float this one */
}
overflow: hidden
不应该在元素上显示滚动条。它会自动扩展宽度和高度,因此应该显示所有内容,除非它比列本身更大(例如图像或固定大小的元素)。您确定没有添加额外的CSS吗? - Simon East.right
或者.right
内部的任何内容想要至少有一定的宽度,那么overflow: hidden
会在窗口太小的情况下截断内容。在我的测试中,我添加了overflow-x: auto;
,这会在这种情况下出现滚动条。 - Joseph Daigleoverflow:hidden
,.right
中的内容将会围绕在 .left
的周围和下方。但是似乎 overflow:hidden
有一些特殊的属性,它可以扩展一个框来容纳其中所有浮动元素,并调整一个框的大小以适应其他浮动元素。我不太确定原因 - 技术原因可能埋藏在 CSS 规范中某个地方,因为所有现代浏览器似乎都有这种行为。 - Simon East对于浮动元素,可以设置 overflow:auto; height:auto;
#leftcol{
width:250px;
float:left;
clear:none;
}
#rightcol{
float:left;
overflow:hidden;
width:auto; /* This may or may not work */
}