亚洲国产日韩欧美一区二区三区,精品亚洲国产成人av在线,国产99视频精品免视看7,99国产精品久久久久久久成人热,欧美日韩亚洲国产综合乱

目錄
CSS Grid 佈局與其他 CSS 佈局方法有何不同?
如何開始使用 CSS Grid 佈局?
我可以將 CSS Grid 佈局與其他 CSS 佈局方法一起使用嗎?
如何使用 CSS Grid 佈局創(chuàng)建網(wǎng)格?
如何將項(xiàng)目放置在網(wǎng)格上?
什麼是網(wǎng)格線和網(wǎng)格軌道?
CSS Grid 佈局中的 fr 單位是什麼?
如何使網(wǎng)格具有響應(yīng)性?
我可以在網(wǎng)格中嵌套網(wǎng)格嗎?
所有瀏覽器都支持 CSS Grid 佈局嗎?
首頁 web前端 css教學(xué) 引入CSS網(wǎng)格佈局

引入CSS網(wǎng)格佈局

Feb 21, 2025 am 09:35 AM

CSS Grid 佈局:構(gòu)建強(qiáng)大且靈活的網(wǎng)站佈局

核心要點(diǎn)

  • CSS Grid 佈局提供了一種更強(qiáng)大、更靈活的方式來創(chuàng)建複雜的網(wǎng)站佈局,無需使用諸如 inlinefloat 之類的屬性或單獨(dú)的網(wǎng)格系統(tǒng)樣式表。
  • 目前,只有 IE 10 和 Edge 支持 CSS Grid 佈局,但可以通過 Chrome 和 Firefox 中的特定標(biāo)誌或使用 polyfill 來啟用它。
  • CSS Grid 佈局使用稱為 “fr” 的度量單位、線條、軌道、單元格和區(qū)域來定義網(wǎng)頁上元素的佈局。
  • CSS Grid 佈局允許完全分離標(biāo)記和佈局,使 CSS 更易於維護(hù),並為設(shè)計(jì)提供了無限的可能性。

Introducing the CSS Grid Layout

圖片來自 SitePoint/Natalia Balska。

在創(chuàng)建複雜的網(wǎng)站時(shí),網(wǎng)格至關(guān)重要?,F(xiàn)代網(wǎng)頁設(shè)計(jì)中網(wǎng)格的重要性從眾多實(shí)現(xiàn)網(wǎng)格系統(tǒng)以加快開發(fā)速度的框架數(shù)量中可見一斑。

隨著 CSS Grid 佈局規(guī)範(fàn)的引入,您無需再包含單獨(dú)的樣式表即可使用網(wǎng)格系統(tǒng)。另一個(gè)優(yōu)點(diǎn)是,您無需再依賴 inlinefloat 等屬性來佈置網(wǎng)頁上的元素。在本教程中,我們將介紹網(wǎng)格系統(tǒng)的基礎(chǔ)知識(shí),並創(chuàng)建一個(gè)基本的博客佈局。

瀏覽器支持

目前,只有 IE 10 和 Edge 支持 Grid 佈局——您還不能在商業(yè)網(wǎng)站上使用它。

它可以通過 chrome://flags 中的 “實(shí)驗(yàn)性 Web 平臺(tái)功能” 標(biāo)誌在 Chrome 中啟用。您可以使用 layout.css.grid.enabled 標(biāo)誌在 Firefox 中啟用它。

另一種選擇是使用 polyfill。確實(shí)存在 CSS Grid Polyfill!使用上述各種選項(xiàng),您可以在 Grid 佈局仍處於起步階段時(shí)開始試驗(yàn)並儘可能多地了解它。

注意:Internet Explorer 目前已實(shí)現(xiàn)舊版本的規(guī)範(fàn)。不幸的是,這意味著它與最新規(guī)範(fàn)並不完全兼容。在學(xué)習(xí)本教程中的示例時(shí),建議您使用啟用了相應(yīng)標(biāo)誌的 Chrome 或 Firefox。

網(wǎng)格系統(tǒng)術(shù)語

在佈置元素方面,CSS 網(wǎng)格系統(tǒng)類似於表格。但是,它更加強(qiáng)大和靈活。在本節(jié)中,我將討論一些在使用網(wǎng)格時(shí)需要注意的術(shù)語:

fr 單位:此單位用於指定可用空間的一部分。它旨在與 grid-rowsgrid-columns 一起使用。根據(jù)規(guī)範(fàn)——

分配分?jǐn)?shù)空間發(fā)生在所有“長度”或基於內(nèi)容的行和列大小達(dá)到其最大值之後。

線條:線條定義其他元素的邊界。它們垂直和水平運(yùn)行。在下圖中,有四條垂直線和四條水平線。

軌道:軌道是平行線之間的空間。在下圖中,有三條垂直軌道和三條水平軌道。

單元格:單元格是網(wǎng)格的基本構(gòu)建塊。在下圖中,共有九個(gè)單元格。

區(qū)域:區(qū)域是一個(gè)矩形形狀,具有任意數(shù)量的單元格。因此,軌道 是一個(gè) 區(qū)域,單元格 也是一個(gè) 區(qū)域。

Introducing the CSS Grid Layout

在網(wǎng)格中定位元素

讓我們從基礎(chǔ)開始。在本節(jié)中,我將教您如何使用網(wǎng)格將元素定位到特定位置。要使用 CSS Grid 佈局,您需要一個(gè)父元素和一個(gè)或多個(gè)子元素。為了演示,我們將使用以下標(biāo)記作為我們的網(wǎng)格系統(tǒng):

<div class="grid-container">
  <div class="grid-element item-a">A</div>
  <div class="grid-element item-b">B</div>
  <div class="grid-element item-c">C</div>
  <div class="grid-element item-d">D</div>
  <div class="grid-element item-e">E</div>
  <div class="grid-element item-f">F</div>
</div>

完成標(biāo)記後,您需要在父元素上應(yīng)用 display: griddisplay: inline-grid 以及其他樣式,如下所示:

.grid-container {
  display: grid;
  grid-template-columns: 200px 10px 0.3fr 10px 0.7fr;
  grid-template-rows: auto 20px auto;
}

grid-template-columnsgrid-template-rows 屬性用於指定各種行和列的寬度。在上面的示例中,我定義了五列。 10px 列充當(dāng)槽,用於在元素之間提供所需的間距。第一列寬度為 200px。第三列佔(zhàn)據(jù)剩餘空間的 0.3 部分。類似地,第五列佔(zhàn)據(jù)剩餘空間的 0.7 部分。

對於 grid-template-rows 中的第一行使用 auto 允許該行根據(jù)其內(nèi)部的內(nèi)容進(jìn)行擴(kuò)展。 20px 行充當(dāng)槽。

此時(shí),元素緊密地排列在一起,如下面的演示所示。 (此處省略CodePen演示鏈接)

觀察到元素 B 位於我們計(jì)劃用作槽的第二列中。如果您沒有指定網(wǎng)格內(nèi)子元素的位置,瀏覽器會(huì)將一個(gè)元素放在每個(gè)單元格中,直到第一行完全填充,其餘元素然後進(jìn)入下一行。這就是我們在第二行剩下四個(gè)備用列的原因。

要將元素移動(dòng)到網(wǎng)格中的特定單元格,您需要在 CSS 中指定它們的位置。在解釋如何使用網(wǎng)格系統(tǒng)移動(dòng)元素之前,請查看下圖。 (此處省略圖片鏈接)

在本例中,我們將使用“基於線條的放置”?;毒€條的放置意味著我們的網(wǎng)格系統(tǒng)中的線條將充當(dāng)放置和限制元素的指南。讓我們以元素 B 為例。在水平方向上,它從第 3 列線開始,到第 4 列線結(jié)束。在垂直軸上,它位於第 1 行線和第 2 行線之間。

我們使用 grid-column-start 來指定元素的起始垂直線。在這種情況下,它將設(shè)置為 3。 grid-column-end 指示元素的結(jié)束垂直線。在這種情況下,此屬性將等於 4。相應(yīng)的行值也將類似地設(shè)置。

考慮到以上所有內(nèi)容,要將元素 B 移動(dòng)到第二個(gè)單元格,您將使用以下 CSS:

<div class="grid-container">
  <div class="grid-element item-a">A</div>
  <div class="grid-element item-b">B</div>
  <div class="grid-element item-c">C</div>
  <div class="grid-element item-d">D</div>
  <div class="grid-element item-e">E</div>
  <div class="grid-element item-f">F</div>
</div>

類似地,要將元素 F 移動(dòng)到第六個(gè)單元格,您將使用以下 CSS:

.grid-container {
  display: grid;
  grid-template-columns: 200px 10px 0.3fr 10px 0.7fr;
  grid-template-rows: auto 20px auto;
}

在對 CSS 進(jìn)行這些更改後,元素應(yīng)該像此演示中一樣正確地間隔開。 (此處省略CodePen演示鏈接)

創(chuàng)建基本佈局

現(xiàn)在是時(shí)候創(chuàng)建一個(gè)基本的博客佈局了。該博客將具有頁眉、頁腳、側(cè)邊欄和兩個(gè)用於實(shí)際內(nèi)容的部分。讓我們從標(biāo)記開始:

.element-b {
  grid-column-start: 3;
  grid-column-end: 4;
  grid-row-start: 1;
  grid-row-end: 2;
}

請記住,標(biāo)記中元素的順序不會(huì)影響元素在網(wǎng)頁上的位置。只要您不更改 CSS,您就可以在標(biāo)記中將頁腳放在頁眉上方,而網(wǎng)頁上元素的位置不會(huì)改變。當(dāng)然,我不建議這樣做。關(guān)鍵是——您的標(biāo)記將不再?zèng)Q定元素的位置。

我們現(xiàn)在要做的就是確定各種元素的 grid-row-end 等屬性的值。就像在最後一個(gè)示例中一樣,我們將使用網(wǎng)格圖來確定所有網(wǎng)格屬性的值。 (此處省略圖片鏈接)

如上圖所示,頁眉從第 1 列線到第 4 列線,從第 1 行線到第 2 行線。這應(yīng)該如下所示:

.element-f {
  grid-column-start: 5;
  grid-column-end: 6;
  grid-row-start: 3;
  grid-row-end: 4;
}

類似地,“額外內(nèi)容”從第 3 列線到第 4 列線,從第 5 行線到第 6 行線。因此,CSS 將是:

<div class="grid-container">
  <div class="grid-element header">Header</div>
  <div class="grid-element sidebar">Sidebar</div>
  <div class="grid-element main">Main Content</div>
  <div class="grid-element extra">Extra Info</div>
  <div class="grid-element footer">Footer</div>
</div>

現(xiàn)在也可以輕鬆確定所有其他元素的網(wǎng)格屬性。查看 CodePen 演示並試驗(yàn)各種網(wǎng)格值,以更好地了解基於線條的放置。 (此處省略CodePen演示鏈接)

結(jié)論

CSS 網(wǎng)格佈局規(guī)範(fàn)使我們能夠輕鬆創(chuàng)建複雜的佈局。我們需要編寫的 CSS 更簡單、更易於維護(hù)。在設(shè)計(jì)中創(chuàng)建複雜佈局時(shí),我們不再需要使用 float 或其他此類屬性。另一個(gè)巨大的優(yōu)勢是標(biāo)記和佈局的完全分離。使用 CSS Grid 佈局,可能性是無限的。

如果您對本教程有任何疑問,請?jiān)谠u論中告訴我。

關(guān)於 CSS Grid 佈局的常見問題

CSS Grid 佈局與其他 CSS 佈局方法有何不同?

CSS Grid 佈局是一個(gè)二維佈局系統(tǒng),與其他 CSS 佈局方法(如 Flexbox,它是一維的)不同。這意味著使用 CSS Grid,您可以同時(shí)控制水平和垂直佈局,而其他方法則無法做到這一點(diǎn)。它旨在處理更複雜的設(shè)計(jì)和大型佈局。它也更靈活、更強(qiáng)大,允許更具創(chuàng)意和精細(xì)的設(shè)計(jì)。

如何開始使用 CSS Grid 佈局?

要開始使用 CSS Grid 佈局,您需要將元素的 display 屬性設(shè)置為 gridinline-grid。這使得元素成為網(wǎng)格容器,其子元素成為網(wǎng)格項(xiàng)目。然後,您可以使用各種網(wǎng)格屬性來定義網(wǎng)格的佈局和網(wǎng)格項(xiàng)目的位置。

我可以將 CSS Grid 佈局與其他 CSS 佈局方法一起使用嗎?

是的,CSS Grid 佈局可以與其他 CSS 佈局方法結(jié)合使用。例如,您可以將 Flexbox 用於網(wǎng)站的組件,將 CSS Grid 用於整體佈局。這使您可以利用每種佈局方法的優(yōu)勢。

如何使用 CSS Grid 佈局創(chuàng)建網(wǎng)格?

要使用 CSS Grid 佈局創(chuàng)建網(wǎng)格,您首先需要通過將元素的 display 屬性設(shè)置為 gridinline-grid 來定義網(wǎng)格容器。然後,您可以使用 grid-template-columnsgrid-template-rows 屬性來定義網(wǎng)格中列和行的數(shù)量和大小。

如何將項(xiàng)目放置在網(wǎng)格上?

您可以使用 grid-columngrid-row 屬性將項(xiàng)目放置在網(wǎng)格上。這些屬性允許您指定項(xiàng)目的起始線和結(jié)束線,從而有效地將其放置在網(wǎng)格的特定單元格或單元格中。

什麼是網(wǎng)格線和網(wǎng)格軌道?

在 CSS Grid 佈局中,網(wǎng)格線是構(gòu)成網(wǎng)格結(jié)構(gòu)的分隔線。它們的編號(hào)從 1 開始,行號(hào)從上到下、從左到右遞增。網(wǎng)格軌道是兩條相鄰網(wǎng)格線之間的空間,可以是列或行。

CSS Grid 佈局中的 fr 單位是什麼?

CSS Grid 佈局中的 fr 單位代表“分?jǐn)?shù)”。它表示網(wǎng)格容器中可用空間的一部分。例如,如果您有一個(gè)包含三列的網(wǎng)格,並將一列的寬度設(shè)置為1fr,而另外兩列設(shè)置為2fr,則第一列將佔(zhàn)據(jù)可用空間的三分之一,而另外兩列將各佔(zhàn)據(jù)三分之一。

如何使網(wǎng)格具有響應(yīng)性?

要使網(wǎng)格具有響應(yīng)性,您可以將媒體查詢與 grid-template-columnsgrid-template-rows 屬性結(jié)合使用。您還可以將 auto-fillauto-fit 關(guān)鍵字與 repeat 函數(shù)一起使用,以根據(jù)視口的尺寸自動(dòng)調(diào)整列和行的數(shù)量和大小。

我可以在網(wǎng)格中嵌套網(wǎng)格嗎?

是的,您可以在 CSS Grid 佈局中嵌套網(wǎng)格。這意味著您可以使網(wǎng)格項(xiàng)目本身成為網(wǎng)格容器,從而創(chuàng)建複雜的嵌套佈局。

所有瀏覽器都支持 CSS Grid 佈局嗎?

所有現(xiàn)代瀏覽器(包括 Chrome、Firefox、Safari 和 Edge)都支持 CSS Grid 佈局。但是,Internet Explorer 不支持它。因此,務(wù)必為使用不受支持瀏覽器的用戶提供備用佈局。

請注意,由於我無法訪問外部網(wǎng)站和圖片,我無法直接顯示圖片。 請確保將圖片鏈接正確地添加到你的最終輸出中。

以上是引入CSS網(wǎng)格佈局的詳細(xì)內(nèi)容。更多資訊請關(guān)注PHP中文網(wǎng)其他相關(guān)文章!

本網(wǎng)站聲明
本文內(nèi)容由網(wǎng)友自願(yuàn)投稿,版權(quán)歸原作者所有。本站不承擔(dān)相應(yīng)的法律責(zé)任。如發(fā)現(xiàn)涉嫌抄襲或侵權(quán)的內(nèi)容,請聯(lián)絡(luò)admin@php.cn

熱AI工具

Undress AI Tool

Undress AI Tool

免費(fèi)脫衣圖片

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅(qū)動(dòng)的應(yīng)用程序,用於創(chuàng)建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

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

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費(fèi)的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費(fèi)的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強(qiáng)大的PHP整合開發(fā)環(huán)境

Dreamweaver CS6

Dreamweaver CS6

視覺化網(wǎng)頁開發(fā)工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

CSS教程,用於創(chuàng)建加載旋轉(zhuǎn)器和動(dòng)畫 CSS教程,用於創(chuàng)建加載旋轉(zhuǎn)器和動(dòng)畫 Jul 07, 2025 am 12:07 AM

創(chuàng)建CSS加載旋轉(zhuǎn)器的方法有三種:1.使用邊框的基本旋轉(zhuǎn)器,通過HTML和CSS實(shí)現(xiàn)簡單動(dòng)畫;2.使用多個(gè)點(diǎn)的自定義旋轉(zhuǎn)器,通過不同延遲時(shí)間實(shí)現(xiàn)跳動(dòng)效果;3.在按鈕中添加旋轉(zhuǎn)器,通過JavaScript切換類來顯示加載狀態(tài)。每種方法都強(qiáng)調(diào)了設(shè)計(jì)細(xì)節(jié)如顏色、大小、可訪問性和性能優(yōu)化的重要性,以提升用戶體驗(yàn)。

解決CSS瀏覽器兼容性問題和前綴 解決CSS瀏覽器兼容性問題和前綴 Jul 07, 2025 am 01:44 AM

處理CSS瀏覽器兼容性和前綴問題需理解瀏覽器支持差異並合理使用廠商前綴。 1.了解常見問題如Flexbox、Grid支持不一,position:sticky失效,動(dòng)畫表現(xiàn)不同;2.查閱CanIuse確認(rèn)特性支持情況;3.正確使用-webkit-、-moz-、-ms-、-o-等廠商前綴;4.推薦使用Autoprefixer自動(dòng)添加前綴;5.安裝PostCSS並配置browserslist指定目標(biāo)瀏覽器;6.構(gòu)建時(shí)自動(dòng)處理兼容性;7.老項(xiàng)目可用Modernizr檢測特性;8.不必追求所有瀏覽器一致,確

造型與CSS不同訪問的鏈接 造型與CSS不同訪問的鏈接 Jul 11, 2025 am 03:26 AM

設(shè)置訪問過鏈接的樣式能提升用戶體驗(yàn),尤其在內(nèi)容密集型網(wǎng)站中幫助用戶更好導(dǎo)航。 1.使用CSS的:visited偽類可定義已訪問鏈接樣式,如顏色變化;2.注意瀏覽器出於隱私限制僅允許修改部分屬性;3.顏色選擇應(yīng)與整體風(fēng)格協(xié)調(diào),避免突兀;4.移動(dòng)端可能不顯示該效果,建議結(jié)合其他視覺提示如icon輔助標(biāo)識(shí)。

使用CSS剪輯路徑創(chuàng)建自定義形狀 使用CSS剪輯路徑創(chuàng)建自定義形狀 Jul 09, 2025 am 01:29 AM

使用CSS的clip-path屬性可以裁剪元素為自定義形狀,如三角形、圓形缺口、多邊形等,無需依賴圖片或SVG。其優(yōu)勢包括:1.支持circle、ellipse、polygon等多種基本形狀;2.可響應(yīng)式調(diào)整,適配移動(dòng)端;3.易於動(dòng)畫化,可結(jié)合hover或JavaScript實(shí)現(xiàn)動(dòng)態(tài)效果;4.不影響佈局流,僅裁剪顯示區(qū)域。常見用法如圓形裁剪clip-path:circle(50pxatcenter)和三角形裁剪clip-path:polygon(50%0%,1000%,00%)。注意

顯示:內(nèi)聯(lián),顯示:塊和顯示:內(nèi)聯(lián)塊之間有什麼區(qū)別? 顯示:內(nèi)聯(lián),顯示:塊和顯示:內(nèi)聯(lián)塊之間有什麼區(qū)別? Jul 11, 2025 am 03:25 AM

Themaindifferencesbetweendisplay:inline,block,andinline-blockinHTML/CSSarelayoutbehavior,spaceusage,andstylingcontrol.1.Inlineelementsflowwithtext,don’tstartonnewlines,ignorewidth/height,andonlyapplyhorizo????ntalpadding/margins—idealforinlinetextstyling

CSS繪畫API是什麼? CSS繪畫API是什麼? Jul 04, 2025 am 02:16 AM

thecsspaintingapienablesdemimageGenerationinCsssingJavascript.1.developersCreateApaintWorkletClassWithaPaint()method.2.theyregisteritviaregisterpaint()。 3.thecustompAntFunctionSthenusitySthenusedisthenusedisthenusedIncerspropertieslikeBacknockforg-image-image.thisallows.thisallowsforderforderynamecvis

如何使用CSS創(chuàng)建響應(yīng)式圖像? 如何使用CSS創(chuàng)建響應(yīng)式圖像? Jul 15, 2025 am 01:10 AM

要使用CSS創(chuàng)建響應(yīng)式圖片,主要可通過以下方法實(shí)現(xiàn):1.使用max-width:100%和height:auto讓圖片在保持比例的同時(shí)自適應(yīng)容器寬度;2.結(jié)合HTML的srcset和sizes屬性智能加載適配不同屏幕的圖片源;3.利用object-fit和object-position控製圖片裁剪與焦點(diǎn)展示。這些方法共同確保圖片在不同設(shè)備上清晰、美觀地呈現(xiàn)。

什麼是常見的CSS瀏覽器不一致? 什麼是常見的CSS瀏覽器不一致? Jul 26, 2025 am 07:04 AM

不同瀏覽器對CSS解析存在差異,導(dǎo)致顯示效果不一致,主要包括默認(rèn)樣式差異、盒模型計(jì)算方式、Flexbox和Grid佈局支持程度及某些CSS屬性行為不一致。 1.默認(rèn)樣式處理不一致,解決方法是使用CSSReset或Normalize.css統(tǒng)一初始樣式;2.舊版IE的盒模型計(jì)算方式不同,建議統(tǒng)一使用box-sizing:border-box;3.Flexbox和Grid在邊緣情況或舊版本中表現(xiàn)有差異,應(yīng)多測試並使用Autoprefixer;4.某些CSS屬性行為不一致,需查閱CanIuse並提供降級

See all articles