介紹
這是一個簡單的演示,展示瞭如何擁有一些具有交替行的簡單網格。在此範例中,一行包含三個項目,另一行包含兩個項目。
這是一個 100% CSS 解決方案,歸結為使用 @property 作為 grid-columns 屬性的跨度值。
它是如何運作的
嗯,很簡單。您需要知道有多少個不同的行以及這些不同行總共包含多少個項目。
在我的範例中,這將是:
- 2 個不同的行
- 3 件 2 件 = 5 件
這表示在執行 :nth-child() 選擇器時,您必須使用該總數:
&:nth-child(5n - 4), &:nth-child(5n - 4) ~ &:is(:nth-child(5n - 3), :nth-child(5n - 2)) { --col-span: 4; } &:nth-child(5n - 1), &:nth-child(5n - 1) ~ &:nth-child(5n) { --col-span: 6; }
col-span 自訂屬性的使用方式如下:
.item { ... grid-column: span var(--span-cols); grid-row: span var(--span-rows); ... }
差不多就是這樣了。它非常簡單,沒什麼大不了的,但對每個人仍然有用。
更適合設計師但更複雜的解決方案
對於更適合設計者的解決方案,我認為聲明實際的項目數量而不是更改跨度,因為如果更改網格中的列數,但忘記調整跨度,則會得到不良效果。這就是為什麼我添加了另一個自訂屬性並更改它。
最不幸的部分是,無論您選擇哪種解決方案,如果您想要完全動態的解決方案,則需要手動更改第 n 個子選擇器,或者透過 JavaScript 更改。 (你也可以使用SASS / SCSS,這顯然也是一個好方法)
新加入的屬性如下所示:
@property --row-items { syntax: "<integer>"; inherits: false; initial-value: 1; } </integer>
對於項目,您可以變更屬性 --row-items
的值
&:nth-child(5n - 4), &:nth-child(5n - 4) ~ &:is(:nth-child(5n - 3), :nth-child(5n - 2)) { --row-items: 3; } &:nth-child(5n - 1), &:nth-child(5n - 1) ~ &:nth-child(5n) { --row-items: 2; }
現在直接在 .item 類別上計算跨列,而不是選擇 x。
.item { --span-cols: calc(var(--grid-cols) / var(--row-items)); grid-column: span var(--span-cols); grid-row: span var(--span-rows); }
作為參考,列和行自訂屬性聲明如下:
@property --grid-cols { syntax: "<integer>"; inherits: false; initial-value: 12; } @property --grid-rows { syntax: "<integer>"; inherits: false; initial-value: 12; } </integer></integer>
結論
我希望這可以幫助您了解如何使這種網格發揮作用。
如果您發現任何錯誤,或者對我有任何反饋,請在這篇文章中發表評論!
謝謝,祝您週末愉快,
庫萊卡里
原筆
具有 items 屬性的 Pen
以上是具有交替行的簡單網格的詳細內容。更多資訊請關注PHP中文網其他相關文章!

React生態系統為我們提供了許多庫,所有庫都集中在拖放的相互作用上。我們有反應,反應,可愛dnd,

我可以說我經常使用背景折疊。 IT Wager IT幾乎從未在日常CSS工作中使用。但是在斯特凡·朱迪斯(Stefan Judis)的帖子中,我想起了它,

使用RequestAnimationFrame進行動畫化應該很容易,但是如果您還沒有徹底閱讀React的文檔,那麼您可能會遇到一些事情

聽著,我不是GraphQL專家,但我確實喜歡與之合作。作為前端開發人員,它向我曝光數據的方式非常酷。它就像一個菜單


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

Atom編輯器mac版下載
最受歡迎的的開源編輯器

SAP NetWeaver Server Adapter for Eclipse
將Eclipse與SAP NetWeaver應用伺服器整合。

SecLists
SecLists是最終安全測試人員的伙伴。它是一個包含各種類型清單的集合,這些清單在安全評估過程中經常使用,而且都在一個地方。 SecLists透過方便地提供安全測試人員可能需要的所有列表,幫助提高安全測試的效率和生產力。清單類型包括使用者名稱、密碼、URL、模糊測試有效載荷、敏感資料模式、Web shell等等。測試人員只需將此儲存庫拉到新的測試機上,他就可以存取所需的每種類型的清單。

VSCode Windows 64位元 下載
微軟推出的免費、功能強大的一款IDE編輯器