成都web前端學習:CSS中position的定位技術
使用position定位有四種方式,分別為absolute、relative、static、fixed,static是靜態定位,也為系統自動定位。下面主要分析其他三種定位方式的特點。
1. 絕對定位:position:absolute
(1) 絕對定位是將元素依據已經定位(絕對、固定或相對定位)的離他最近的祖先元素進行定位,祖先元素沒有定位或沒有祖先元素則默認依據body瀏覽器窗口定位。
(2) 絕對定位的元素不論本身是什么類型,定位后都將成為一個新的塊級元素,如果未指定寬高度默認自適應實際包含的內容區域(不在默認瀏覽器寬度)。
(3) 絕對定位后的元素將處于賦予其他元素之上,自身不占位置,他原來在正常文檔流中所占的空間同時被關閉,就是說絕對定位的元素不占據頁面空間,原空間被后續元素使用。
絕對定位必須用left、right、top、bottom屬性之一激活,用于指定元素左、右、上、下外邊距距離已定位祖先元素(或瀏覽器)左、右、上、下內邊框的距離。
如果定義多個屬性,當left、right、沖突時以left為準,當top、bottom沖突時以top為準,如果一個也不指定則元素扔按普通文檔流布局,但他自己不再占據空間,后續元素上移與其重疊。
絕對定位元素定位后相對祖先元素的位置不在變化,若頁面內容較多拖動頁面滾動時,定位元素會隨頁面一起滾動。
絕對定位元素重疊覆蓋其他元素時可用z-index屬性設置他們的疊放次序。
2. 相對定位:position:relative
(1) 相對定位是讓元素(可以是行內元素)相對于它在正常文檔流原位置按left、right、top、和bottom偏移量移動到新位置。
(2) 相對定位的元素移動后保持原外觀樣式大小,移動定位后不會占據新空間會覆蓋新位置原有元素,原位置空間被保留,其他元素相對他原來的位置不變。
(3) Left、right、top、和bottom指定相對原位置移動的偏移量,可以使用帶單位數值、相對父元素的百分比%。
Left正值:左邊向內—向右移動,負值:左邊向外—向左。
right正值:右邊向內—向左移動,負值:右邊向外—向右。
top正值:上邊向內—向下移動,負值:上邊向外—向上。
bottom正值:下邊向內—向上移動,負值:下邊向外—向下。
3. 固定定位:position:fixed
固定定位與絕對定位absolute相似,定位后元素也生成為新塊級盒框、覆蓋新位置原有元素,在正常文檔流中所占的原空間關閉被后續元素使用。
固定定位與絕對定位absolute的區別是定位的元素無論父元素是否定位都會直接在瀏覽器窗口中定位,不會隨滾動條拖動頁面而滾動,固定定位用left、right、top、bottom指定瀏覽器左、右、上、下各邊向中心的偏移量作為定位元素外邊距位置
總結:元素的定位模型中需要區分每個屬性值的不同定位方式,分為絕對定位、相對定位、固定定位以及默認定位和繼承父元素。其中絕對定位和固定定位都脫離原本的文檔流,而相對定位則遵循原本的文檔流。設置元素的定位方式后,還需要指定偏移量。可以從上、右、下、左四個方向進行偏移。并且可以利用Z-index屬性設置元素之間的層疊順序。
本文章由千鋒成都web前端培訓學員總結分享,學習web前端,可以參考千鋒提供的web前端學習路線,該學習路線對從零基礎小白到web前端初級開發工程師,web前端高級開發工程師,后面的web前端大神級開發工程師都有一個明確清晰的指導,根據千鋒提供的web前端學習路線圖可以讓你對學習web前端開發需要掌握的知識有個清晰的了解,并快速入門web前端開發。

猜你喜歡LIKE
相關推薦HOT
更多>>
如何學編程基礎入門,怎么選擇適合自己的編程語言?
如何學編程基礎入門?零基礎想要學習編程,第一步先決定要學哪一門語言,了解它們的特點和應用的領域;第二步確定學習方法,自學還要結合一些輔助...詳情>>
2023-03-06 14:57:00
成都java培訓多少錢?選擇靠譜的培訓機構很重要
成都java人才需求量大,薪資水平高,發展前景良好,很多人希望能提升自己的專業技能,找到一份好工作,培訓可以說是系統、快速地提高自身技術水...詳情>>
2023-02-13 17:41:00
參加Python培訓班零基礎可以學會嗎?
隨著互聯網、云計算、大數據的飛速發展,在可以預見的未來,中國的人工智能產業將在諸多領域迎來新的發展機遇。也有越來越多的人選擇入行人工...詳情>>
2022-02-11 15:12:00
web前端培訓班的費用是多少?學習需要多久?
隨著市場上新型開發場景的不斷增多,企業對web前端開發技術的要求也在不斷的提升,對前端開發工程師的需求量在不斷的增多,市場上有一些小伙...詳情>>
2022-02-11 15:11:00熱門推薦
零基礎學習java多久可以學會?
沸成都h5培訓課程去哪比較好?如何選擇?
熱零基礎小白入門h5如何學習?
熱計算機前端和后端區別,哪個好?
新如何成為編程程序員,應該具備哪些素質?
如何學編程基礎入門,怎么選擇適合自己的編程語言?
python一般用來做什么?可以滿足不同的應用場合需要
嵌入式開發要學哪些課程?要了解對應的學習要求
web前端培訓多久?了解具體的培訓時間
成都java培訓多少錢?選擇靠譜的培訓機構很重要
java架構師學習路線是什么?選擇合適的學習路線很重要
學程序員需要什么條件?要掌握哪些方面的基礎理論知識
程序員培訓一般要多少錢?要考慮相應的綜合性價比
學編程從哪方面入手?能有效的提升學習效率