嘿!準備好深入研究 CSS 中最酷、最強大的工具之一了嗎?今天,我們將探索Flexbox。如果您曾經在以簡潔且響應迅速的方式對齊專案或分配空間方面遇到困難,Flexbox 是您最好的新朋友。
Flexbox(靈活框佈局)是一種一維佈局系統,可讓您控制容器內元素的對齊、間距和分佈 - 即使這些元素的大小未知或動態。
將 Flexbox 視為一個工具箱,用於建立可以根據可用空間拉伸、收縮或對齊的佈局。
要開始使用 Flexbox,您只需在容器上設定 display: flex 即可。一旦你這樣做了,該容器的所有直接子代都會變成彈性項目,並且它們將立即開始表現不同。
Item 1Item 2Item 3
.flex-container { display: flex; }
現在,.flex-container 內的所有項目都是 Flex 項目,可以輕鬆操作。
預設情況下,Flexbox 將項目排列在一行(水平)中,但如果您希望將它們排列在一列(垂直)中怎麼辦? Flexbox 透過 flex-direction 屬性為您提供完全控制。
.flex-container { display: flex; flex-direction: column; }
現在,物品將垂直堆疊!
假設您有三件物品,並且您想將它們均勻地分佈在容器中。這就是 justify-content 派上用場的地方。
.flex-container { display: flex; justify-content: space-between; }
現在,項目將在容器內均勻分佈。
justify-content 控制水平對齊,而 align-items 負責垂直對齊(或沿橫軸)。以下是您的選擇:
.flex-container { display: flex; align-items: center; }
現在,所有項目都將在容器內垂直居中。
有時,您希望某些項目增大、縮小或具有固定的起始尺寸。 flex-grow、flex-shrink 和 flex-basis 屬性可讓您控制該行為:
例子:
.item { flex-grow: 1; flex-shrink: 0; flex-basis: 100px; }
這可確保專案從 100 像素開始,但如果需要,它可以成長以填充額外的空間,而不會縮小。
讓我們用一個例子將所有這些放在一起!
Item 1Item 2Item 3
.flex-container { display: flex; flex-direction: row; justify-content: space-around; align-items: center; height: 300px; background-color: #f0f0f0; } .item { background-color: #4CAF50; padding: 20px; color: white; flex-grow: 1; }
在此範例中:
Flexbox 消除了我們過去在 CSS 中苦苦掙扎的佈局設計的大部分複雜性。不再有浮動,不再擔心清理,響應式設計更容易!
裡多伊‧哈桑
免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。
Copyright© 2022 湘ICP备2022001581号-3