css中的position屬性值的探究(小結(jié))

css的position屬性指定了元素的定位類(lèi)型,然后通過(guò)top,botton,left,right來(lái)具體定位。
在具體定位之前必須使用position屬性,否則所有的具體定位屬性都無(wú)法生效。
position可選擇的值一共五個(gè):static ,relative,absolute,fixed,或sticky。
下面博主將一一進(jìn)行含代碼和運(yùn)行結(jié)果的對(duì)比解釋
首先是不設(shè)置position屬性,可以看到two元素的top的屬性并未生效,而顏色屬性是有效的,當(dāng)前位置是默認(rèn)文檔流中的位置,以此為原型對(duì)比position改變時(shí)的元素位置的變化。
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <link rel="stylesheet" href="./j.css"> </head> <body> <div class="box" id="one">One</div> <div class="box" id="two">Two</div> <div class="box" id="three">Three</div> <div class="box" id="four">Four</div> </div> </body> </html>
.box { display: inline-block; background: red; color: white; } #two { top: 260px; bottom: 126px; left: 20px; background: blue; }
position:static
在#two的類(lèi)下添加position:static;如下(后面每處只修改position的值)
#two { position:static; top: 260px; bottom: 126px; left: 20px; background: blue; }
HTML元素的默認(rèn)值,即沒(méi)有定位,元素出現(xiàn)在正常的流中。
靜態(tài)定位的元素不會(huì)受到 top, bottom, left, right影響。
這個(gè)值既然會(huì)使定位屬性失效,那么它存在的意義是什么的?
在網(wǎng)頁(yè)樣式修改的過(guò)程中,可以暫時(shí)的屏蔽某些元素的位置信息,或者在修改的時(shí)候,保留,某些部分的位置信息,便于恢復(fù)。
position:relative
相對(duì)定位,相對(duì)與原來(lái)正常文檔流的位置定位,但是在定位時(shí)不改變?cè)瓉?lái)的頁(yè)面布局,既是相當(dāng)于只是把定位的元素進(jìn)行了移動(dòng),而移動(dòng)的對(duì)比標(biāo)準(zhǔn)位置就是正常文檔流中的位置,而原來(lái)的位置會(huì)留白。
position :absolute
絕對(duì)定位,該元素將從普通文檔流中刪除,并且不會(huì)為頁(yè)面布局中的元素創(chuàng)建空間。他相對(duì)于最近已定位的父元素定位。例子中即是根據(jù)body元素來(lái)定位的。
position :fixed
固定定位,所謂固定定位和絕對(duì)定位相似,一樣都會(huì)從普通文檔流中刪除,并且不會(huì)為頁(yè)面布局中的元素創(chuàng)建空間;不一樣的是它是固定在視窗上的,是以視窗為定位對(duì)象的的,相信大家瀏覽很多網(wǎng)頁(yè)時(shí)都有這樣的感受,網(wǎng)頁(yè)上部或者下部會(huì)有廣告不會(huì)隨著網(wǎng)頁(yè)的上下滾動(dòng)而移動(dòng),它們是固定在網(wǎng)頁(yè)上的,并且如果沒(méi)有設(shè)置z-index來(lái)修該疊放次序,它們會(huì)覆蓋網(wǎng)頁(yè)的內(nèi)容。
position :sticky
該元素并不脫離文檔流,仍然保留元素原本在文檔流中的位置。
當(dāng)元素在容器中被滾動(dòng)超過(guò)指定的偏移值時(shí),元素在容器內(nèi)固定在指定位置。亦即如果你設(shè)置了top: 20px,那么在sticky元素到達(dá)距離相對(duì)定位的元素頂部50px的位置時(shí)固定,不再向上移動(dòng)。
元素固定的相對(duì)偏移是相對(duì)于離它最近的具有滾動(dòng)框的父元素,如果父元素都不可以滾動(dòng),那么是相對(duì)于viewport來(lái)計(jì)算元素的偏移量
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
- 這篇文章主要介紹了CSS中的 position屬性sticky的相關(guān)知識(shí),本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-03-12
css position屬性為absolute時(shí)其百分值的計(jì)算
這篇文章主要介紹了css position屬性為absolute時(shí)其百分值的計(jì)算,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小2019-08-06- 這篇文章主要介紹了詳解CSS中position屬性介紹(新增sticky) 的相關(guān)資料,position的含義是指定位類(lèi)型,取值類(lèi)型可以有:static、relative、absolute、fixed、inherit和stic2018-12-17
css關(guān)于position屬性的用法詳解(絕對(duì)定位和相對(duì)定位的混淆)
下面小編就為大家?guī)?lái)一篇css關(guān)于position屬性的用法詳解(絕對(duì)定位和相對(duì)定位的混淆)。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2016-09-08淺談CSS中display/float/position屬性值的相互影響
下面小編就為大家?guī)?lái)一篇淺談CSS中display/float/position屬性值的相互影響。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2016-08-17- 這篇文章主要介紹了圖解CSS中position屬性的定位用法,重點(diǎn)講解了相對(duì)定位和絕對(duì)定位在頁(yè)面布局中的作用,需要的朋友可以參考下2016-04-28
- 這篇文章主要介紹了CSS的position屬性的完全解析,包括position和overflow在一些相似使用方面的對(duì)比,需要的朋友可以參考下2015-11-06
CSS樣式position屬性的一個(gè)小實(shí)例:z方向三層布局分析
使用CSS樣式中的position屬性實(shí)現(xiàn)z方向三層布局效果,本文甚是疑惑,于是乎搜集整理一番,曬出代碼和大家分享一下2012-12-07- 這篇文章主要介紹了CSS 中的position屬性實(shí)例詳解,定位屬性position有4個(gè)值,分別是靜態(tài)定位(static)、相對(duì)定位(relative)、絕對(duì)定位(absolute)和固定定位(fixed)2023-09-04