CSS中absolute與relative區(qū)分方法揭秘
本文向大家描述一下CSS中absolute與relative的區(qū)分方法,Absolute,CSS中的寫法是:position:absolute;他的意思是絕對定位,而Relative,CSS中的寫法是:position:relative;他的意思是絕對相對定位,這里看一下他們?nèi)绾螀^(qū)分。
CSS中absolute與relative如何區(qū)分
我們都知道absolute是絕對定位,relative是相對定位。相應(yīng)的用position屬性來進行設(shè)置。但是這個絕對與相對是什么意思呢?絕對是哪里的絕對,相對又是相對于什么地方相對?那他們又有什么樣的特性,可以做出什么樣的效果呢?關(guān)于兩者之間又有什么樣的技巧下面我們就來解讀。關(guān)于position屬性可以參考這里。
Absolute,CSS中的寫法是:position:absolute;他的意思是絕對定位,他是參照瀏覽器的左上角,配合top、right、bottom、left(下面簡稱trbl)進行定位,在沒有設(shè)定trbl的情況下,默認依據(jù)父級的坐標(biāo)原始點為原始點。如果設(shè)定trbl并且父級沒有設(shè)定position屬性,那么當(dāng)前的absolute則以瀏覽器左上角為原始點進行定位,位置將由trbl決定。
我們看下面的圖片:
一般來講,網(wǎng)頁居中的話用Absolute絕對定位就非常容易出錯,因為瀏覽器窗口一直是隨著分辨率的大小自動適應(yīng)的,而Absolute則會以瀏覽器的左上角為原始點,不會應(yīng)為分辨率的變化而變化位置。很多人出錯就在于這點上出錯。而網(wǎng)頁居左其特性與Relative很相似,但是還是有本質(zhì)的區(qū)別。
Relative,CSS中的寫法是:position:relative;他的意思是絕對相對定位,他是參照父級的原始點為原始點,無父級則以body的原始點為原始點,配合trbl進行定位,當(dāng)父級內(nèi)有padding等CSS屬性時,當(dāng)前級的原始點則參照父級內(nèi)容區(qū)的原始點進行定位。
我們看下面的圖片:
有時我們還需要依靠z-index來設(shè)定容器的上下關(guān)系,數(shù)值越大越在最上面,數(shù)值范圍是自然數(shù)。當(dāng)然有一點要注意,父子關(guān)系是無法用z-index來設(shè)定上下關(guān)系的,一定是子級在上父級在下。這種屬性設(shè)置是css下拉菜單中尤為常見。
【編輯推薦】
- CSS控制input樣式和懸停交互
- CSS中display:inline-block屬性妙用
- CSS偽類的概念及作用
- CSS中block和inline元素的差別
- CSS代碼結(jié)構(gòu)中id及class類命名探究