最新文章專題視頻專題問答1問答10問答100問答1000問答2000關(guān)鍵字專題1關(guān)鍵字專題50關(guān)鍵字專題500關(guān)鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關(guān)鍵字專題關(guān)鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
當(dāng)前位置: 首頁 - 科技 - 知識百科 - 正文

position定位讓人又愛又恨的屬性

來源:懂視網(wǎng) 責(zé)編:小采 時間:2020-11-27 15:38:38
文檔

position定位讓人又愛又恨的屬性

position定位讓人又愛又恨的屬性:關(guān)于css中的position這個屬性,在使用的時候,有時很強(qiáng)大,有時又讓人很無奈。 強(qiáng)大的時候,對于div中的一些小物件不方便使用margin或者padding的時候,給與position:absolute;再配備left、right、top和bottom,基本上就是想放哪里放哪里了。 讓人無
推薦度:
導(dǎo)讀position定位讓人又愛又恨的屬性:關(guān)于css中的position這個屬性,在使用的時候,有時很強(qiáng)大,有時又讓人很無奈。 強(qiáng)大的時候,對于div中的一些小物件不方便使用margin或者padding的時候,給與position:absolute;再配備left、right、top和bottom,基本上就是想放哪里放哪里了。 讓人無

關(guān)于css中的position這個屬性,在使用的時候,有時很強(qiáng)大,有時又讓人很無奈。

強(qiáng)大的時候,對于div中的一些小物件不方便使用margin或者padding的時候,給與position:absolute;再配備left、right、top和bottom,基本上就是想放哪里放哪里了。

讓人無奈的時候,就是我們一旦濫用了position這個定位屬性,就會讓自己的布局飛的滿天是,又因為z-index沒有設(shè)定好,基本上,整體的布局就會讓你手足無措,找原因的話,又非常麻煩,最后,恐怕只能推倒重做了。

所以,對待position這個屬性,我們要詳細(xì)的了解到它運(yùn)行的原理,以及應(yīng)用的場景,這樣,我們才可以在想用的時候完美的驅(qū)使它來完成我們想要的效果。

廢話不多說,直接上步驟,先說position的概念吧

position,我們百度一下,就知道這個單詞的意思是方位,在css中,就是定位的意思,屬性名字是 position,屬性值有五個,分別是 static(默認(rèn)定位)、absolute(絕對定位)、relative(相對定位)、fixed(固定定位)、inherit(繼承定位,不常用)。

書寫規(guī)則:

position:static|absolute|relative|fixed|inherit

每個屬性值都介紹一下吧

1、position:static(默認(rèn)定位)

顧名思義,就是我們平常書寫的時候,每個div在文檔流中默認(rèn)的排版,就是static屬性值,它不會讓div或者其他元素脫離文檔流,而是遵循排版的原則,從上到下,塊級元素?fù)Q行,行內(nèi)元素不換行等等通用原則,所以,如果不用定位屬性,那么這個position就不用設(shè)置。

2、position:relative(相對定位)

相對定位,就是相對于自己本身進(jìn)行定為移動,它不會脫離文檔流,也就是說,我給一個元素設(shè)定了這個屬性,那么這個文件還會在這個文檔流中來回移動,至于怎么移動,下面再講。

3、position:absolute(絕對定位)

跟相對定位不同,它是相對于擁有相對定位屬性的父元素進(jìn)行定位移動,它會脫離文檔流。

如果父元素中的所有子元素都設(shè)置了absolute,那么所有的子元素都會浮起來,然后堆疊到一塊兒,所以為了把各個元素攤開顯示,我們需要移動這些元素,而移動這些元素的方法,就是直接是style樣式表中書寫:left、right、top、bottom四個屬性,然后在屬性的后面寫上px(像素)、%(百分比)等可以表示距離的單位。

  在這里,我們要特別強(qiáng)調(diào),left和right不能同時使用,top和bottom不能同時使用。

  并且,這四個元素,都是相對于擁有相對定位(relative)屬性的父元素進(jìn)行移動的。如果父元素沒有相對定位,那么絕對定位就是相對于body進(jìn)行定位的。

  所以,為了不讓自己設(shè)置的元素跑飛了,那就記得給父元素設(shè)置relative吧。

  4、fixed(固定定位)

  這個定位是相對于瀏覽器窗口進(jìn)行的定位,移動方法跟相對和絕對定位一樣的。

  它也會脫離文案流,我們常見的側(cè)邊欄或者廣告圖就是用這個功能實現(xiàn)的。很實用,很強(qiáng)大的功能。

  5、inherit(繼承定位),就是從父元素繼承position定位屬性,不怎么常用。

  講到這里,我們就涉及到一個z-index (層級)的問題。剛才我們講過,如果給子元素全部設(shè)置了absolute,那么所有的子元素就會堆疊在一起,互相遮蓋。

  如果我們需要在一個元素上堆疊好多層,那怎么給它們排序呢。這就需要用到z-index屬性了。

  z-index屬性的屬性值是數(shù)字。數(shù)字越大,那么它就顯示的最考上,比如說吧,

  z-index=0 的元素就會再 z-index=1的下面顯示,z-index=10會再z-index=8上面顯示,所以,堆疊它們的顯示順序,設(shè)置z-index就可以了。

  當(dāng)然,如果不設(shè)置z-index的話,默認(rèn)的,后面的元素會遮蓋前面的元素。

  使用時需注意的問題:

  1、float屬性不可以和position屬性共用,切記!

  2、使用absolute時記得給父元素加relative

  3、除了用left和top外,還有right和bottom,活學(xué)活用

  4、能不用position就不用position,畢竟容易把布局搞亂

  5、Javascript中調(diào)用position的方法是:div.style.positio=”absolute”類似 div是變量名

  上面只是簡單的講了一下position的基本東西,如果你在這里面沒有了解到你想要的答案,你可以在下面給我留言,我會積極回復(fù)的。

  最后,積極交流,共同進(jìn)步!

聲明:本網(wǎng)頁內(nèi)容旨在傳播知識,若有侵權(quán)等問題請及時與本網(wǎng)聯(lián)系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

文檔

position定位讓人又愛又恨的屬性

position定位讓人又愛又恨的屬性:關(guān)于css中的position這個屬性,在使用的時候,有時很強(qiáng)大,有時又讓人很無奈。 強(qiáng)大的時候,對于div中的一些小物件不方便使用margin或者padding的時候,給與position:absolute;再配備left、right、top和bottom,基本上就是想放哪里放哪里了。 讓人無
推薦度:
標(biāo)簽: 定位 定位的 讓人
  • 熱門焦點(diǎn)

最新推薦

猜你喜歡

熱門推薦

專題
Top