1. 程式人生 > >關於行內元素能否設定寬高的問題

關於行內元素能否設定寬高的問題

理論上來說,行內元素區別於塊級元素的一點就是它不能設定寬高。例如:

<div style="width: 100px; height: 100px; background-color: black">
    <span style="width: 10px; height: 10px; background-color: white"></span>
</div>

這段程式碼的執行結果是:只顯示了一個寬高各100px的黑塊,而沒有顯示白塊。

但並不是所有的行內元素都不能設定寬高,替換元素就可以。首先,我們來明確一下替換元素和不可替換元素的定義。

替換元素

:瀏覽器根據元素的標籤和屬性來決定元素的的具體顯示內容。HTML中的img、input、textarea、select、object都是替換元素。這些元素往往沒有實際的內容,即是一個空元素。

不可替換元素:(X)HTML 的大多數元素是不可替換元素,即其內容直接表現給使用者端(例如瀏覽器)。

除此之外,當我們給行內元素新增屬性float時,我們也可以給它設定寬高。因為不論元素本身是什麼,當它浮動時,就會生成一個塊級框。行內元素也就會生成相應的行內框。此時我們為它設定寬高,寬高就會起作用了。例如:

<div style="width: 100px; height: 100px; background-color: black">
    <span style="float: left; width: 20px; height: 20px; background-color: red"></span>
</div>


效果如圖: