搜尋
首頁web前端css教學CSS 定位 – 絕對、相對、固定和黏性。

CSS Positioning – Absolute, Relative, Fixed, and Sticky.

第 11 講:CSS 定位 – 絕對、相對、固定與黏性

歡迎來到《從基礎到輝煌》課程第十一講。在本次講座中,我們將探討CSS定位的不同類型:相對絕對固定黏性。了解定位可以讓您控制元素在頁面上的顯示位置以及使用者與內容互動時元素的行為。


1.了解位置屬性

position 屬性指定元素在文件中的位置。它可以採用以下值:

  • 靜態:預設值。元素根據正常文件流定位。
  • 相對:元素相對於其正常位置定位。
  • 絕對:元素相對於其最近的定位祖先或初始包含區塊進行定位。
  • 固定:元素相對於瀏覽器視窗定位,並在捲動時保持在相同位置。
  • 黏性:元素被視為相對元素,直到達到閾值(例如滾動位置),然後它變得固定。

2.相對定位

具有position:relative的元素相對於其原始(靜態)位置定位。它保留在文件流程中,這意味著其他元素仍會考慮它。

  • 範例:使用相對定位來移動元素。
  .box {
    position: relative;
    top: 20px; /* Moves the box 20px down from its normal position */
    left: 30px; /* Moves the box 30px to the right */
  }

在此範例中,元素從原始位置向下移動 20px,向右移動 30px,但保留其在文件流程中的空間。


3.絕對定位

位置為絕對的元素將從文件流中刪除,並相對於其最近的定位祖先(即位置不是靜態的祖先)進行定位。

  • 範例:將元素絕對定位在容器內。
  .container {
    position: relative; /* This container is the reference for the absolute positioning */
    width: 300px;
    height: 200px;
    background-color: #f4f4f4;
  }

  .box {
    position: absolute;
    top: 50px;
    right: 20px;
    background-color: #333;
    color: white;
    padding: 10px;
  }

在此範例中:

  • .box 絕對位於距離頂部 50 像素、距離右側 20 像素 .container 元素內部。
  • .container 具有position:relative,使其成為.box 的定位參考。

4.固定定位

位置為固定的元素相對於瀏覽器視窗定位,無論頁面如何捲動。

  • 範例:建立固定導覽列。
  .navbar {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    background-color: #333;
    color: white;
    padding: 15px;
    text-align: center;
  }

在此範例中:

  • .navbar 位於視窗頂部,即使頁面滾動也保持固定。

5.黏性定位

具有position: Sticky 的元素被視為相對元素,直到使用者捲動超過定義的閾值,此時它變得固定。

  • 範例:滾動後保留在頂部的黏性標題。
  .header {
    position: sticky;
    top: 0;
    background-color: #333;
    color: white;
    padding: 10px;
  }

在此範例中:

  • .header 的行為就像普通元素一樣,直到它到達頁面頂部。之後,它會粘在頂部並在用戶滾動時保持可見。

6. Z-索引

當元素被定位(相對、絕對、固定或黏性)時,您可以使用 z-index 屬性來控制它們的堆疊順序。較高的 z-index 值使元素出現在較低的元素之上。

  • 範例:控制堆疊順序。
  .box1 {
    position: absolute;
    top: 50px;
    left: 50px;
    z-index: 1; /* Lower z-index */
    background-color: #f4f4f4;
    padding: 20px;
  }

  .box2 {
    position: absolute;
    top: 80px;
    left: 80px;
    z-index: 2; /* Higher z-index */
    background-color: #333;
    color: white;
    padding: 20px;
  }

在此範例中:

  • 由於 z-index 值較高,.box2 將出現在 .box1 上方。

7.結合定位技術

您可以組合定位值來建立進階佈局。

  • 範例:修正了具有相對內容區域的側邊欄。
  .sidebar {
    position: fixed;
    top: 0;
    left: 0;
    width: 200px;
    height: 100vh;
    background-color: #333;
    color: white;
    padding: 20px;
  }

  .content {
    position: relative;
    margin-left: 220px; /* Account for the fixed sidebar */
    padding: 20px;
  }

在此版面:

  • .sidebar はページの左側に固定され、スクロールしても表示されたままになります。
  • .content 領域は相対的に配置され、サイドバーを考慮してマージンが調整されます。

練習演習

  1. 固定ヘッダーとフッターを使用して Web ページを作成し、コンテンツの相対位置と絶対位置を使用します。
  2. スクロール時に固定される固定サイドバーを追加します。

次のステップ: 次の講義では、CSS 変換とアニメーション について詳しく説明し、Web 要素を簡単にアニメーション化する方法を学びます。デザインをダイナミックかつインタラクティブにする準備をしましょう!


LinkedIn でフォローしてください
リドイ・ハサン

以上是CSS 定位 – 絕對、相對、固定和黏性。的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
錨定位只是不關心來源訂單錨定位只是不關心來源訂單Apr 29, 2025 am 09:37 AM

錨定定位避開HTML源順序的事實是如此之高,因為它在內容和演示文稿之間的另一個關注點是另一個分離的事實。

保證金是什麼:40px 100px 120px 80px表示?保證金是什麼:40px 100px 120px 80px表示?Apr 28, 2025 pm 05:31 PM

文章討論了CSS保證金屬性,特別是“保證金:40px 100px 120px 80px”,其應用程序以及對網頁佈局的影響。

什麼是不同的CSS邊框特性?什麼是不同的CSS邊框特性?Apr 28, 2025 pm 05:30 PM

本文討論了CSS邊境屬性,重點是自定義,最佳實踐和響應能力。主要論點:邊境 - 拉迪烏斯(Border-Radius)對響應式設計最有效。

什麼是CSS背景,列出屬性?什麼是CSS背景,列出屬性?Apr 28, 2025 pm 05:29 PM

本文討論了CSS背景屬性,它們在增強網站設計方面的用途以及避免的常見錯誤。重點是使用背景大小的響應式設計。

什麼是CSS HSL顏色?什麼是CSS HSL顏色?Apr 28, 2025 pm 05:28 PM

文章討論了CSS HSL顏色,其在網絡設計中的使用以及比RGB的優勢。主要重點是通過直觀的顏色操縱來增強設計和可訪問性。

我們如何在CSS中添加評論?我們如何在CSS中添加評論?Apr 28, 2025 pm 05:27 PM

本文討論了CSS中評論的使用,詳細介紹了單線和多行評論語法。它認為註釋可以增強代碼的可讀性,可維護性和協作,但如果無法正確管理,可能會影響網站性能。

什麼是CSS選擇器?什麼是CSS選擇器?Apr 28, 2025 pm 05:26 PM

本文討論了CSS選擇器,其類型和用於造型HTML元素的用法。它比較ID和類選擇器,並與復雜的選擇器解決性能問題。

哪種類型的CSS持有最高優先級?哪種類型的CSS持有最高優先級?Apr 28, 2025 pm 05:25 PM

本文討論了CSS優先級,重點是具有最高特異性的內聯風格。它解釋了特異性級別,覆蓋方法和用於管理CSS衝突的工具。

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脫衣器

Video Face Swap

Video Face Swap

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

熱工具

SublimeText3 Mac版

SublimeText3 Mac版

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

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

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

Atom編輯器mac版下載

Atom編輯器mac版下載

最受歡迎的的開源編輯器

SecLists

SecLists

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

SublimeText3 Linux新版

SublimeText3 Linux新版

SublimeText3 Linux最新版