Css 具有自动调整宽度的浮动div

Css 具有自动调整宽度的浮动div,css,html,css-float,width,Css,Html,Css Float,Width,我目前拥有以下HTML: <div class="clearfix"> <div style="width:33%;float:left">content</div> <div style="width:33%;float:left">content</div> <div style="width:33%;float:left">content</div> </div> 内容 内

我目前拥有以下HTML:

<div class="clearfix">
   <div style="width:33%;float:left">content</div>
   <div style="width:33%;float:left">content</div>
   <div style="width:33%;float:left">content</div>
</div>

内容
内容
内容
当一行上有3个div时,由于我为每个div指定了一个百分比宽度,它们都完全占据了父宽度的宽度。我试图实现的是让浮动div根据行中存在的div数自动调整其宽度(即,不硬编码百分比宽度)。例如,如果有2个div,则每个div将占据父对象整个宽度的一半(即50%)。如果有3个div,则为33%


浮动div可以这样做吗?如果没有,我可以用什么其他方法来实现这种流体布局?我考虑过让父级使用“表格”显示,而内部div使用“表格单元格”显示,但随后父级不再占用其可用宽度的100%。

您可以尝试使用css,如

display:box; 
前家长组及

box-flex:1

用于嵌套。有关示例,请参见

您可以尝试使用css,比如

display:box; 
前家长组及

box-flex:1

用于嵌套。有关示例,请参见

您的表格方法对我很有效,只需记住从children div中删除
float:left
,请参阅我的工作。

您的表格方法对我很有效,只需记住从children div中删除
float:left
,请参阅我的工作。

您可以使用jQuery实现样式的动态更改:

var divcnt = $(".clearfix div").length;
var widthInPercent = 100.0 / divcnt;
$(".clearfix div").each(function() {
    $(this).css("width", widthInPercent+"%")
});

有关示例,请参见。

您可以使用jQuery实现样式的动态更改:

var divcnt = $(".clearfix div").length;
var widthInPercent = 100.0 / divcnt;
$(".clearfix div").each(function() {
    $(this).css("width", widthInPercent+"%")
});

举个例子看看。

我有没有觉得自己很愚蠢。我想我可能把浮动定义忘在那里了。谢谢尼尔森!不用麻烦了,我们都会不时地俯瞰,但在这里你会发现很多眼睛可以看到它们!。当你有一个
高度
溢出-y:scroll也指定了?嗯,我觉得自己很愚蠢吗。我想我可能把浮动定义忘在那里了。谢谢尼尔森!不用麻烦了,我们都会不时地俯瞰,但在这里你会发现很多眼睛可以看到它们!。当你有一个
高度
溢出-y:scroll也指定了吗?