我意識到這個問題是比較具體的......我試圖讓我的頭清楚地圍繞「寬度」對CSS框模型的影響。爲什麼應用CSS寬度會導致此框下拉一條線?
我在兩個單選按鈕的左邊有一個標籤。標籤向左浮動,單選按鈕顯示在標籤的右側。單選按鈕本身右側有標籤,這些標籤可以很長。
收音機在UL模塊中。
當我有寬度:自動;在UL塊上,然後將瀏覽器縮小到很窄,單選按鈕和它們各自的標籤下降到下一行。
如果我刪除寬度:auto,單選按鈕保持浮動狀態,收音機旁邊的標籤字符串不斷縮小,這正是我想要的。
我的問題是:爲什麼寬度:自動導致無線電及其標籤下降一行?是因爲寬度:自動嘗試創建一個可容納標籤字符串全長而不流動文本的框?或者還有其他工作?
這裏的示例代碼這表明行爲:
<style>
.inlineLabels ul{
float:left;
width: 66%;
padding: 0;
}
p.label{
float:left;
text-align:right;
position:relative;
width:32%;
margin: .3em 2% 0 0;
display:block;
}
ul.blockLabels{
/*width:auto; why does uncommenting this cause the radios to drop down to a new line when shrinking browser size? */
list-style:none;
}
</style>
<fieldset class="inlineLabels">
<div>
<p class="label">Choose:</p>
<ul class="blockLabels">
<li>
<label for="a-1">
<input name="a" id="a-1" value="0" type="radio"> <span class="">A short string</span>
</label>
</li>
<li>
<label for="a-2">
<input name="a" id="a-2" value="1" type="radio"> <span class="">A very very very very very very very very very very very very string</span>
</label>
</li>
</ul>
</div>
</fieldset>
@FuzzicalLogic有問題的UL是左浮動的,浮動元素的上述情況正確 - 請按照我提供的鏈接。 – deviousdodo
你絕對正確。對不起,我很抱歉。獎勵!附:我始終關注鏈接。 :P(現在把我的頭埋在恥辱裏,哈哈。) –