感謝大家對上一篇文章的評論,這確實意義重大。我希望你能從這篇文章中學到一兩件事。
在本文中,我們將探討 CSS 中的兩個基本概念-定位與版面。定位和佈局是創建具有視覺吸引力和功能性的網頁的核心。掌握這些概念可以讓您製作出增強使用者體驗的響應式設計。最後,您將了解如何使用這些技術像專業人士一樣建立您的網頁。
- 定位與版面
CSS 定位控制元素在網頁上的定位或放置方式。如果適用,定位會受到頂部、底部、左側和右側偏移值的影響。有 5 個主要的 CSS Position 值;
1。靜態: 預設情況下,所有 HTML 元素都是靜態定位的。這僅僅意味著元素不變,不移動,不受上、下、左、右偏移值的影響。
2。相對: 元素相對於其正常位置定位。
3。絕對: 元素相對於其最近的祖先(父級)或視口定位。
4。已修正: 元素相對於視口定位並在滾動期間保持固定。
5。黏性: 黏性定位允許元素根據滾動位置和偏移值上、下、左、右在相對位置和固定位置之間切換。
以下是解釋 CSS 定位的插圖。
這是幫助使插圖栩栩如生的程式碼。歡迎自行複製修改。
<meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>CSS Positioning</title> <link rel="stylesheet" href="style.css"> <div> <pre class="brush:php;toolbar:false">*{ margin: 0; padding: 0; box-sizing: border-box; } body{ font-family: Arial, sans-serif; background-color: #f2f2f2; display: grid; place-content: center; min-height: 100vh; } .container{ width: 100%; max-width: 1200px; height: auto; display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); border: 1px solid red; gap: 20px; padding: 20px; } .static{ background-color: #ccc; padding: 20px; border: 1px solid black; width: 300px; position: static; } .relative{ background-color: #ccc; padding: 20px; border: 1px solid black; width: 300px; position: relative; top:30px; right: 30px; } .absolute{ background-color: #ccc; padding: 20px; border: 1px solid black; width: 300px; position: absolute; top: 30px; right: 100px; } .fixed{ background-color: #ccc; padding: 20px; border: 1px solid black; width: 300px; position: fixed; bottom: 0; right: 0; } .sticky{ background-color: #ccc; padding: 20px; border: 1px solid black; width: 300px; position: sticky; top: 0; right: 0; }
— 暫停,深呼吸,然後繼續! ! —
- CSS 版面配置
1。 Flexbox:這是一種一維佈局方法,用於在單軸(水平和垂直)上佈局項目。
Flexbox 的特點
- display: flex - 這會為容器建立一個彈性框。
- align-items: center - 這控制容器的垂直對齊。
- justify-content: space- Between - 這控制容器的水平對齊方式。
- 間隙:在不需要邊距的情況下增加彈性項目之間的間距。
這是一個簡單導覽列的前後對比
<meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Navigation Bar using CSS Flexbox</title> <link rel="stylesheet" href="style.css"> <div> <pre class="brush:php;toolbar:false">* { margin: 0; padding: 0; box-sizing: border-box; } body { min-height: 100vh; } li { list-style: none; } a { text-decoration: none; color: white; } nav { background-color: #333; color: #fff; padding: 10px; } ul { display: flex; align-items: center; gap: 2rem; }
結果:
2。網格:這是一種用於建立行和列的二維佈局方法。
特點
- display: grid - 這會為容器建立一個網格。
- grid-template-columns/grid-template-rows - 這定義了容器的行或列。
- Repeat(2, 1fr) - 這將建立 2 個等寬列。
- 間隙:10px-增加網格項目之間的間距。
這是我在 Unsplash 上找到的一些貓照片的前後對比。
<meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>CSS Positioning</title> <link rel="stylesheet" href="style.css"> <div> <pre class="brush:php;toolbar:false">*{ margin: 0; padding: 0; box-sizing: border-box; } body{ font-family: Arial, sans-serif; background-color: #f2f2f2; display: grid; place-content: center; min-height: 100vh; } .container{ width: 100%; max-width: 1200px; height: auto; display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); border: 1px solid red; gap: 20px; padding: 20px; } .static{ background-color: #ccc; padding: 20px; border: 1px solid black; width: 300px; position: static; } .relative{ background-color: #ccc; padding: 20px; border: 1px solid black; width: 300px; position: relative; top:30px; right: 30px; } .absolute{ background-color: #ccc; padding: 20px; border: 1px solid black; width: 300px; position: absolute; top: 30px; right: 100px; } .fixed{ background-color: #ccc; padding: 20px; border: 1px solid black; width: 300px; position: fixed; bottom: 0; right: 0; } .sticky{ background-color: #ccc; padding: 20px; border: 1px solid black; width: 300px; position: sticky; top: 0; right: 0; }
結果:
比較表
Feature | Flexbox | Grid |
---|---|---|
Axis | One-dimensional | Two-dimensional |
Alignment | Horizontal/Vertical | Rows and columns |
Best for | Navigation Bars | Layouts like dashboards |
Flexibility | Better for small components | Better for page layouts |
定位和佈局是CSS的基礎。了解何時以及如何使用它們不僅會讓您的造型體驗變得更加輕鬆,而且更加愉快和高效。雖然本文將帶您開始使用 Flexbox 和 Grid,但我很快就會發布更深入的指南,探索它們的高級功能、提示和技巧。請繼續關注!
這就是掌握CSS基礎的總結! 我希望你喜歡閱讀這篇文章,就像我喜歡寫它一樣。但在我們分別之前,我很想聽聽你的消息:
您的專案喜歡哪種 CSS 佈局方法 - Flexbox 還是 Grid?為什麼?
歡迎在下面的評論中分享您的想法。
再見了! ! ! !
以上是CSS 並不難(你只是缺少這些基礎知識)- 掌握基礎(第 2 部分)的詳細內容。更多資訊請關注PHP中文網其他相關文章!

是的,youshouldlearnbothflexboxandgrid.1)flexboxisidealforone-demensional,flexiblelayoutslikenavigationmenus.2)gridexcelstcelsintwo-dimensional,confffferDesignssignssuchasmagagazineLayouts.3)blosebothenHancesSunHanceSlineHancesLayOutflexibilitibilitibilitibilitibilityAnderibilitibilityAndresponScormentilial anderingStruction

重構自己的代碼看起來是什麼樣的?約翰·瑞亞(John Rhea)挑選了他寫的一個舊的CSS動畫,並介紹了優化它的思維過程。

CSSanimationsarenotinherentlyhardbutrequirepracticeandunderstandingofCSSpropertiesandtimingfunctions.1)Startwithsimpleanimationslikescalingabuttononhoverusingkeyframes.2)Useeasingfunctionslikecubic-bezierfornaturaleffects,suchasabounceanimation.3)For

@keyframesispopularduetoitsversatoryand and powerincreatingsmoothcsssanimations.keytricksinclude:1)definingsmoothtransitionsbetnestates,2)使用AnimatingMultatingMultationMultationProperPertiessimultane,3)使用使用4)使用BombingeNtibalibility,4)使用CombanningWiThjavoFofofofoftofofo

CSSCOUNTERSAREDOMANAGEAUTOMANAMBERINGINWEBDESIGNS.1)他們可以使用forterablesofcontents,ListItems,and customnumbering.2)AdvancedsincludenestednumberingSystems.3)挑戰挑戰InclassINCludeBrowsEccerCerceribaliblesibility andperformiballibility andperformissises.4)創造性

使用滾動陰影,尤其是對於移動設備,是克里斯以前涵蓋的一個微妙的UX。傑夫(Geoff)涵蓋了一種使用動畫限制屬性的新方法。這是另一種方式。


熱AI工具

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

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

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

MinGW - Minimalist GNU for Windows
這個專案正在遷移到osdn.net/projects/mingw的過程中,你可以繼續在那裡關注我們。 MinGW:GNU編譯器集合(GCC)的本機Windows移植版本,可自由分發的導入函式庫和用於建置本機Windows應用程式的頭檔;包括對MSVC執行時間的擴展,以支援C99功能。 MinGW的所有軟體都可以在64位元Windows平台上運作。

ZendStudio 13.5.1 Mac
強大的PHP整合開發環境

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

SublimeText3 英文版
推薦:為Win版本,支援程式碼提示!

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