接觸排版初期,總是苦惱於元素的換行、並排 ...
控制元素排列方式的 property。
display 有非常多的 values 可以套用,目前排版常見flex、grid、none,還有等等要介紹的block、inline、inline-block(完整 values 可參考W3School - CSS display property)
| 預設為 block 的元素(Block Element 區塊元素) | 預設為 inline 的元素(Inline Element行內元素) |
|---|---|
div, header, section, nav, p, h1~h6, ol, ul, li, form, table |
span, img, a, em, strong |

.
block獨自佔用整個父層的寬度,不會和相鄰的元素在同一行,寬高可隨意調整
inline緊鄰相鄰的元素,佔用的寬高由內容決定,無法隨意調整
(所以若要對行內元素進行尺寸之類的操作,要先重新設定 display)
inline-block同時具有 inline 與 block 特性,可以與相鄰元素在同一行,初始寬高由內容決定,但可隨意調整
-- | 佔滿一行(寬)| 高 | 寬高可否手動調整?
------------- | -------------block | ✅ | 跟隨內容 | ✅inline | ❌跟隨內容 | 跟隨內容 | ❌inline-block | ❌跟隨內容 | 跟隨內容 | ✅
。 img 為行內元素,但它的寬高可以調整,所以算是特例?(暫時理解為如此)
ALPHA Camp課程講義
以上是今天的分享,謝謝看完的你!