[CSS]將 display:flex list 改為 display:grid。
當我用 css 製作文章或產品清單時,我常使用 display:flex,但還是得使用 display:grid?所以我要試試看。
就我個人而言,我習慣使用 display:flex,所以不太會使用 display:grid。
如果是簡單的列表,就沒有問題,但它似乎可以處理相當複雜的佈局,反倒讓我每次都很好奇:”那是什麼?我要怎麼把它組合起來?”我的腦袋短路了(……);
好吧,我會像往常一樣試試 display:flex。
<div class="list01"> <div class="item">item</div> <div class="item">item</div> <div class="item">item</div> <div class="item">item</div> <div class="item">item</div> <div class="item">item</div> </div> <style> .list01 { width: 900px; background: #ddd; display: flex; flex-wrap: wrap; justify-content: space-between; } .list01 .item { margin-bottom: 25px; width: 32%; height: 100px; color: #fff; background: #000; display: flex; justify-content: center; align-items: center; position: relative; } </style>
這是在瀏覽器中顯示時的樣子。
現在讓我們將此程式碼的 css 部分改成 display: grid。
<div class="list01"> <div class="item">item</div> <div class="item">item</div> <div class="item">item</div> <div class="item">item</div> <div class="item">item</div> <div class="item">item</div> </div> <style> .list01 { width: 900px; background: #ddd; display: grid; grid-template-columns: repeat(3, 1fr); gap: 2%; } .list01 .item { margin-bottom: 25px; height: 100px; color: #fff; background: #000; display: flex; justify-content: center; align-items: center; position: relative; } </style>
這就是在瀏覽器中顯示時的樣子。
我不喜歡 GIRD 的地方是,我不喜歡 grid-template-columns (.;
我指定 repeat(3,1fr),所以它就像是寬度為 1fr 的 3 欄。列的寬度應該是…