這個詞確實看起來復雜,但其實很好理解。讓我來拆解一下:
單詞分解
grid-template-columns
?=
grid?- 網格
template?- 模板
columns?- 列
連起來就是:網格模板列?→ 定義網格的列模板
為什么要用這么長的單詞?
語義明確:長單詞能準確表達功能
可讀性好:一看就知道是控制網格列的
一致性:CSS Grid 有一套完整的命名體系
類似的Grid屬性
屬性 | 意思 | 功能 |
---|---|---|
grid-template-rows | 網格模板行 | 定義行 |
grid-template-areas | 網格模板區域 | 定義命名區域 |
grid-column-gap | 網格列間隙 | 列之間的間距 |
grid-row-gap | 網格行間隙 | 行之間的間距 |
更簡單的理解方式
您可以把?grid-template-columns
?理解為:
"請按照這個模板來創建網格的列"
實際例子
/* 創建3列:200px 自動 200px */ grid-template-columns: 200px auto 200px;/* 創建4個等寬列 */ grid-template-columns: 1fr 1fr 1fr 1fr;/* 創建7個等寬列(日歷常用) */ grid-template-columns: repeat(7, 1fr);/* 創建響應式列:最小100px,最大1fr */ grid-template-columns: repeat(auto-fit, minmax(100px, 1fr));
為什么不用更短的單詞?
CSS工作組選擇長名稱是為了:
避免命名沖突:短名稱容易重復
自我描述:一看就知道功能
一致性:所有Grid屬性都有
grid-
前綴
對比其他布局
布局方式 | 屬性 | 長度 | 可讀性 |
---|---|---|---|
Flexbox | flex-direction | 中等 | 👍 |
Grid | grid-template-columns | 長 | 👍👍 |
傳統 | float: left | 短 | 👎 |
雖然單詞長,但一旦理解了它的含義,就會發現它非常直觀和強大!