iT邦幫忙

2025 iThome 鐵人賽

DAY 26
0

grid,網格,將物件給拆成一個一個格子,與flex都是很好用的排版工具
透過給容器display:grid來使用,除了grid也有inline-grid,兩者分別是塊元素與行內元素的差別

        .grid-box {
            display:grid;
            grid-template-columns:150px;
            background-color: lightskyblue;

        }
        div{
            background-color: violet;
        }
   <div class="grid-box">
        <div>我是1</div>
        <div>我是2</div>
        <div>我是3</div>
        <div>我是4</div>
        <div>我是5</div>
        <div>我是6</div>
        <div>我是7</div>
        <div>我是8</div>
        <div>我是9</div>
    </div>

grid-template-columns,用來設定網格的橫向大小,可以用空格分開來設定多個大小,數量越多就表示橫向網格的數量愈多
https://ithelp.ithome.com.tw/upload/images/20251010/20178696214cbwyBxf.png

         grid-template-columns:150px 170px 200px;

https://ithelp.ithome.com.tw/upload/images/20251010/20178696gQByeEW1nJ.png
設gap就是讓每個格子之間有距離
https://ithelp.ithome.com.tw/upload/images/20251010/20178696xXBBWx0AzY.png
有column的地方就會有row,grid-template-rows給網格縱向設定高度,網格會自動依照設定填充,像是columns設定了三個,div有9個,所以這時是columns與rows的網格都有三格,現在只設定一個的話,就只有第一列的高度會變

grid-template-rows:150px;

https://ithelp.ithome.com.tw/upload/images/20251010/20178696Zn0iu5kXfH.png
此時可以用repeat來設定,repeat(次數,大小),repeat可以設兩個數字前著代表重複次數,後者代表你要的大小,底下表示重複設定兩次rows的大小事150px,所以第三列就不會變

grid-template-rows:repeat(2,150px);

https://ithelp.ithome.com.tw/upload/images/20251010/201786965cA72GkKvl.png
minmax(最小值,最大值),會隨著視窗大小自動縮放,當縮到最小值或放大到最大值後就不會動了,這裡給第二列設定來看看情況

grid-template-columns:150px minmax(100px,1000px) 200px;

https://ithelp.ithome.com.tw/upload/images/20251010/20178696K0E5cVQptG.png
當視窗縮小後
https://ithelp.ithome.com.tw/upload/images/20251010/20178696wWTN8Qj1le.png


上一篇
day25Html position
下一篇
day27Html grid2
系列文
HTML&CSS30天修煉29
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言