Flex
這裡條件是一列四個,超過四個要換列,所以換列指令是 flex-wrap: wrap;
,設定一列四個指令是 width: ($box-width — tatal-margin()) / $col-box-length;
,tatal-margin()
是 SCSS 裡面自訂函式,用來計算所有四個 Box margin,也就是箱子間空隙,然後除四。
Grid
這種排版方式用 Grid 來完成非常吃香,比較重要的一個 grid-template-columns: repeat($col-box-length, auto);
,意思是重複四次意思,這裡用 auto
而不是 1fr
是因為要讓他一列少於四個時置中,當然也可以使用 justify-content: center;
,這樣做是為了美觀,不然少於四個時會由左到右排列。
在 Flex 想置中也只要加上 justify-content: center;
即可。