我有父div标签,他必须是几个孩子div标签,我希望那些儿童标签放置水平。 count儿童div标签,不知道高级,对此,我不能用css设置宽父div标签,为此我用js
var cnt = $("#parent div").length; // obtain children tags total count
var parent_width = cnt * 102 ; // 100 is children tag width and 2 is left and right border sum : 100 + 1 + 1
$("#parent").css({
width: parent_width+"px"
});
<div id="parent" style="height: 100px; background-color: #090">
<div style="height: 100px; width: 100px; background-color: #009; border: 1px solid #ccc; float: left">
</div>
<div style="height: 100px; width: 100px; background-color: #009; border: 1px solid #ccc; float: left">
</div>
</div>
这有效,但我认为这必须在没有js的情况下,只有css,请告诉我们如何?
答案 0 :(得分:2)
解决方案:
<强> HTML 强>
<div id="parent">
<div></div>
<div></div>
<div></div>
</div>
<强> CSS 强>
#parent {
float: left;
height: 100px;
background-color: #090;
}
#parent > div {
height: 100px;
width: 100px;
background-color: #009;
border: 1px solid #ccc;
float: left;
}
答案 1 :(得分:1)
您可以将以下CSS用于父元素:
#parent
{
background-color:#090;
height:100px;
float:left;
}
这样,父div
将自动获得适当的宽度,以便孩子可以适应它。
当然,如果您希望它们位于同一行,您必须在子div
元素上指定float属性。
答案 2 :(得分:0)
display:inline-block;
会为你工作吗。
您可以将以下CSS用于父元素:
#parent {
height: 100px;
background-color: #090
display: inline-block;
}
#parent > div {
height: 100px;
width: 100px;
background-color: #009;
border: 1px solid #ccc;
}
&#13;
<div id="parent">
<div></div>
<div></div>
<div></div>
</div>
&#13;