搜尋
首頁web前端css教學你可能不了解的CSS網格函數!

這篇文章要為大家介紹CSS中的網格函數:fit-content()、minmax()、repeat()。有一定的參考價值,有需要的朋友可以參考一下,希望對大家有幫助。

你可能不了解的CSS網格函數!

這3個函數都只能在網格佈局中使用

【推薦教學:CSS影片教學

fit-content()

fit-content函數,接收一個參數,長度值,可以用字面意思來解釋他的作用,"適應內容"。

<div class="fit-content-wrapper">
  <div class="fit-item item1">test1dsssss3333333 sssssssssssssss sssssssssssssssssss sssssssssssssssssss ssssssssssssssssssss 这是用了fit-content(400px)</div>
  <div class="fit-item item2">test2 这是固定宽度width:400px</div>
  <div class="fit-item item3">test3 这是fit-content(400px)</div>
</div>

  .fit-content-wrapper{
    width: 100%;
    height: 200px;
    display: grid;
    grid-template-columns: fit-content(400px) 400px fit-content(400px);
    grid-gap: 10px;
  }
  .fit-item{
    background-color: rgb(20, 106, 177);
  }

效果

你可能不了解的CSS網格函數!

可以看到,當內容長度大於給定長度時,文字會自動換行,不會超過給定長度,當內容長度小於給定長度時,會依照給定的內容長度設定長度。

相容性

你可能不了解的CSS網格函數!

#相容性對於現代瀏覽器沒有什麼問題,新版主流瀏覽器基本上都能支持,對於需要支持ie的項目則不能使用。

minmax()

minmax函數表示一個閉區間範圍[min,max],當值小於等於min時,值等於min,當大於等於max時,值等於max.

min-content,max-content

minmax函數接收min-content,max-content參數,這兩個參數表示內容最短和最長的內容長度。看下面案例。

    <div class="minmax-wrapper">
      <div class="minmax-item">
        test1dsssss3333333 sssssssssssssss sssssssssssssssssss
        sssssssssssssssssss ssssssssssssssssssss
      </div>
      <div class="minmax-item">
        <p>test2222222222</p>
        <p>test 232232323233</p>
        <p>min-content采用最短的内容长度</p>
      </div>
      <div class="minmax-item">
        <p>test</p>
        <p>test 232232323233222222</p>
        <p>max-content采用最长的内容长度</p>
      </div>
    </div>

      .minmax-wrapper {
        margin-top: 100px;
        width: 100vw;
        display: grid;
        grid-gap: 10px;
        grid-template-columns:
          minmax(300px, 500px) minmax(50px, min-content)
          minmax(100px, max-content);
      }

效果

你可能不了解的CSS網格函數!

可以看到,第二個項目的最小的內容寬度為第二個項目中的第一個p標籤

你可能不了解的CSS網格函數!

當設定成minmax(50px,min-content)時,表示列寬最大的寬度也不能超過第一個p標籤的內容寬度。

第三個項目的最大的內容寬度為第三個p標籤的內容寬度

你可能不了解的CSS網格函數!

#當設定成minmax(100px,max-content)時,最大的內容寬度不會超過第三個p標籤的寬度

相容性

你可能不了解的CSS網格函數!

#跟fit-content函數一樣,不支援ie,但對主流的現代瀏覽器支援還不錯。

repeat()

repeat函數用來批次處理網格,接收2個參數,第一個參數表示執行次數,第二個參數表示長度。看下面範例

    <div class="repeat-wrapper">
      <div class="repeat-item">test1 3</div>
      <div class="repeat-item">test2 23</div>
      <div class="repeat-item">test3 444</div>
    </div>

      .repeat-wrapper {
        margin-top: 100px;
        display: grid;
        grid-template-columns: repeat(3, 100px);
        grid-gap: 10px;
      }

效果

你可能不了解的CSS網格函數!

grid-template-columns: repeat(3, 100px) 等價於grid-template-columns: 100px 100px 100px ;

auto-fill,auto-fit

第一個參數除了指明具體次數外,repeat也接收這幾個參數auto-fill,auto-fit ,下面講一講這兩個參數的概念。

auto-fill

auto-fill表示瀏覽器會自動依照項目填入次數。當容器很寬的時候,會自動留出剩餘格子的寬度。如果網格容器在相關軸上具有確定的大小或最大大小,則重複次數是最大可能的正整數,不會導致網格溢出其網格容器。

    <div class="repeat-wrapper">
      <div class="repeat-item">test1 3</div>
      <div class="repeat-item">test2 23</div>
      <div class="repeat-item">test3 444</div>
      <div class="repeat-item">test3 4444</div>
      <div class="repeat-item">test3 444</div>
      <div class="repeat-item">test3 444</div>
    </div>

grid-template-columns: repeat(auto-fill, minmax(100px,1fr));

效果

你可能不了解的CSS網格函數!

#auto-fit

auto-fit也會自動計算,但是與auto-fill不同的是,auto-fit不會保留剩餘的空格子,會將auto-fill剩餘的空格子重新分配到每個格子中。看下面範例

    <div class="repeat-wrapper">
      <div class="repeat-item">test1 3</div>
      <div class="repeat-item">test2 23</div>
      <div class="repeat-item">test3 444</div>
      <div class="repeat-item">test3 4444</div>
      <div class="repeat-item">test3 444</div>
      <div class="repeat-item">test3 444</div>
    </div>

grid-template-columns: repeat(auto-fit, minmax(100px,1fr));

效果

你可能不了解的CSS網格函數!

#相容性

你可能不了解的CSS網格函數!

最新版本的主流瀏覽器基本上都能支持,依舊不支援ie。

總結

這3個網格函數極大的豐富的網格佈局,之前用網格佈局用的不多,但是今天學習這3個函數以及相關的一些參數後,發現網格佈局對比其他佈局也是很方便的,後面在一些自己的小專案中可以試著用一下。

更多程式相關知識,請造訪:程式設計影片! !

以上是你可能不了解的CSS網格函數!的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述
本文轉載於:segmentfault。如有侵權,請聯絡admin@php.cn刪除
兩個圖像和一個API:我們重新著色產品所需的一切兩個圖像和一個API:我們重新著色產品所需的一切Apr 15, 2025 am 11:27 AM

我最近找到了一種動態更新任何產品圖像的顏色的解決方案。因此,只有一種產品之一,我們可以以不同的方式對其進行著色以顯示

每周平台新聞:第三方代碼,被動混合內容,連接最慢的國家的影響每周平台新聞:第三方代碼,被動混合內容,連接最慢的國家的影響Apr 15, 2025 am 11:19 AM

在本週的綜述中,燈塔在第三方腳本上闡明了燈光,不安全的資源將在安全站點上被阻止,許多國家連接速度

託管您自己的非JavaScript分析的選項託管您自己的非JavaScript分析的選項Apr 15, 2025 am 11:09 AM

有很多分析平台可幫助您跟踪網站上的訪問者和使用數據。也許最著名的是Google Analytics(廣泛使用)

它全部都在頭上:管理帶有React頭盔的React Power Site的文檔頭它全部都在頭上:管理帶有React頭盔的React Power Site的文檔頭Apr 15, 2025 am 11:01 AM

該文檔負責人可能不是網站上最迷人的部分,但是其中所處的內容對於您的網站的成功也一樣重要

JavaScript中的Super()是什麼?JavaScript中的Super()是什麼?Apr 15, 2025 am 10:59 AM

當您看到一些稱為super()的JavaScript時,在子類中,您會使用super()調用其父母的構造函數和超級。訪問它

比較不同類型的本機JavaScript彈出窗口比較不同類型的本機JavaScript彈出窗口Apr 15, 2025 am 10:48 AM

JavaScript具有各種內置彈出API,它們顯示用於用戶交互的特殊UI。著名:

為什麼可訪問的網站如此難以構建?為什麼可訪問的網站如此難以構建?Apr 15, 2025 am 10:45 AM

前幾天,我與一些前端人們聊天,講述了為什麼這麼多公司努力創建可訪問的網站。為什麼可訪問的網站如此艱難

'隱藏”屬性顯然很弱'隱藏”屬性顯然很弱Apr 15, 2025 am 10:43 AM

有一個HTML屬性,它可以正是您認為應該做的:

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

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

AI Clothes Remover

AI Clothes Remover

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

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
4 週前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳圖形設置
4 週前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您聽不到任何人,如何修復音頻
4 週前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.聊天命令以及如何使用它們
4 週前By尊渡假赌尊渡假赌尊渡假赌

熱工具

mPDF

mPDF

mPDF是一個PHP庫,可以從UTF-8編碼的HTML產生PDF檔案。原作者Ian Back編寫mPDF以從他的網站上「即時」輸出PDF文件,並處理不同的語言。與原始腳本如HTML2FPDF相比,它的速度較慢,並且在使用Unicode字體時產生的檔案較大,但支援CSS樣式等,並進行了大量增強。支援幾乎所有語言,包括RTL(阿拉伯語和希伯來語)和CJK(中日韓)。支援嵌套的區塊級元素(如P、DIV),

Atom編輯器mac版下載

Atom編輯器mac版下載

最受歡迎的的開源編輯器

EditPlus 中文破解版

EditPlus 中文破解版

體積小,語法高亮,不支援程式碼提示功能

PhpStorm Mac 版本

PhpStorm Mac 版本

最新(2018.2.1 )專業的PHP整合開發工具

WebStorm Mac版

WebStorm Mac版

好用的JavaScript開發工具