CSS基礎知識之position

最近在慕課網學習了 網頁佈局基礎固定層效果 ,都是由聲音甜美的 婧享人生 老師所錄製,視頻詳細講解了CSS中position的用法,在此把學習筆記分享給大家。

CSS定位機制

  • 標準文檔流(Normal flow)
  • 浮動定位(Floats)
  • 絕對定位(Absolute positioning)

標準文檔流

  • 從上到下,從左到右,輸出文檔內容
  • 由塊級元素和行級元素組成

塊級元素

  • 從左到右撐滿頁面,獨佔一行
  • 觸碰到頁面邊緣時,會自動換行
  • 常見的標籤有:div、ul、li、di、dt、p

行級元素

  • 能在同一行內顯示
  • 不會改變HTML文檔結構
  • 常見的標籤有:input、span、label、strong、img

盒子模型

  • 邊框(border)
  • 外邊距(margin)
  • 內邊距(padding)
  • 盒子中的內容(content)
  • 盒子模型尺寸=邊框+外邊距+內邊距+盒子中內容的尺寸

盒子3D模型

  • 第一層:border
  • 第二層:content + padding
  • 第三層:background-image
  • 第四層:background-color
  • 第五層:margin

浮動定位

  • 三個屬性:left(左浮動)、right(右浮動)、none(不浮動)
  • 元素會左移、或右移、直到碰到容器爲止
  • 仍處於標準文檔流中

清除浮動的常用方法

  • clear屬性,常用clear:both;(當父包含塊縮成一條時無效)
  • 同時設置width:100%(或固定寬度)+overflow:hidden;

相對定位

  • 相對於自身原有位置進行偏移
  • 仍處於標準文檔流中
  • 隨即擁有偏移屬性和z-index屬性

絕對定位

  • 建立了以包含塊爲基準的定位
  • 完全脫離了標準文檔流
  • 隨即擁有偏移屬性和z-index屬性

絕對定位-偏移參考基準

  • 未設置偏移量時,無論是否存在已定位的祖先元素,都保持在元素初始位置
  • 已設置偏移量時,無已定位祖先元素,以爲偏移參考基準
  • 已設置偏移量時,有已定位祖先元素,以距其最近的已定位祖先元素爲偏移參考基準

絕對定位-常見問題

  • 沒有設置寬度時,元素的寬度根據內容進行調節
  • 左右佈局時,柱子層的高度,一定要大於絕對定位元素的高度

固定定位(也屬於絕對定位)

  • 位置固定,不會隨滾動條變化
  • 被他遮蓋的元素,可以從其下層穿過

固定定位-偏移參考基準

  • 未設置偏移量時,無已定位祖先元素,以瀏覽器窗口爲基準定位
  • 未設置偏移量時,有已定位祖先元素,以祖先元素爲基準定位
  • 已設置偏移量時,無論是否存在已定位的祖先元素,均以瀏覽器窗口爲基準定位

歡迎來到 石佳劼的博客,如有疑問,請在「原文」評論區 留言,我會盡量爲您解答。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章