自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

DIV+CSS相對(duì)定位和絕對(duì)定位用法詳解

開(kāi)發(fā) 前端
在用DIV+CSS控制排版過(guò)程中,定位一直被人認(rèn)為是一個(gè)難點(diǎn),這里向大家描述一下DIV+CSS網(wǎng)頁(yè)布局中CSS相對(duì)定位和CSS絕對(duì)定位用法,相信你一定會(huì)感興趣。

本文和大家重點(diǎn)討論一下DIV+CSS網(wǎng)頁(yè)布局之CSS絕對(duì)定位和CSS相對(duì)定位,在用DIV+CSS控制排版過(guò)程中,定位一直被人認(rèn)為是一個(gè)難點(diǎn),這主要是表現(xiàn)為很多網(wǎng)友在沒(méi)有深入理解清楚定位的原理時(shí),排出來(lái)的雜亂網(wǎng)頁(yè)常讓他們不知所措。

詳解DIV+CSS相對(duì)定位和CSS絕對(duì)定位用法

  在用DIV+CSS控制排版過(guò)程中,定位一直被人認(rèn)為是一個(gè)難點(diǎn),這主要是表現(xiàn)為很多網(wǎng)友在沒(méi)有深入理解清楚定位的原理時(shí),排出來(lái)的雜亂網(wǎng)頁(yè)常讓他們不知所措,而另一邊一些高手則常常借助定位的強(qiáng)大功能做出些很酷的效果來(lái),比如CSS相冊(cè)等等,因此自己雜亂的網(wǎng)頁(yè)與高手完美的設(shè)計(jì)形成鮮明對(duì)比,這在一定程度上打擊了初學(xué)定位的網(wǎng)友,也在他們心目中形成這樣的一種思想:當(dāng)我熟練地玩轉(zhuǎn)DIV+CSS定位時(shí),我就已是高手了。不管你怎么想,我只希望下面的教程能讓你更深入地了解CSS定位屬性。

  閱讀建議

  先說(shuō)說(shuō)我這篇教程的思路,這對(duì)于你在正真開(kāi)始閱教程前是有很大幫助的。我的思路是這樣的:先給出定位較專(zhuān)業(yè)化精煉的解釋?zhuān)酉聛?lái)再用打比如的方法形象地介紹它們,此時(shí)大家要和前面講到的專(zhuān)業(yè)解釋對(duì)比閱讀。介紹完理論,將通過(guò)實(shí)例來(lái)介紹定位的各知識(shí)點(diǎn),雖然實(shí)例不美,但每一則實(shí)例都是精心挑選的,如果要完整掌握DIV+CSS定位方法,請(qǐng)務(wù)必弄懂每一個(gè)實(shí)例的原理。最后將會(huì)帶大家做一個(gè)較為酷的綜合實(shí)例。如果你想提高你閱讀本文的興趣或者動(dòng)力,你可以先跳到最后看綜合實(shí)例的運(yùn)行效果。

  1.定位的專(zhuān)業(yè)解釋

  (1)語(yǔ)法

  position:static|absolute|fixed|relative

  (2)說(shuō)明

  從上面語(yǔ)法可以看出,定位的方法有很多種,它們分別是靜態(tài)(static),CSS絕對(duì)定位(absolute),固定(fixed),CSS相對(duì)定位(relative)。在這個(gè)教程里,我不逐一講,只講最常用也是最實(shí)用的兩個(gè)定位方法:CSS絕對(duì)定位(absolute)、CSS相對(duì)定位(relative)。

  CSS絕對(duì)定位(absolute):將被賦予此定位方法的對(duì)象從文檔流中拖出,使用left,right,top,bottom等屬性相對(duì)于其最接近的一個(gè)最有定位設(shè)置的父級(jí)對(duì)象進(jìn)行CSS絕對(duì)定位,如果對(duì)象的父級(jí)沒(méi)有設(shè)置定位屬性,即還是遵循HTML定位規(guī)則的,則依據(jù)body對(duì)象左上角作為參考進(jìn)行定位。CSS絕對(duì)定位對(duì)象可層疊,層疊順序可通過(guò)z-index屬性控制,z-index值為無(wú)單位的整數(shù),大的在最上面,可以有負(fù)值(目前負(fù)值FF不支持)。

  CSS相對(duì)定位(relative):對(duì)象不可層疊,依據(jù)left,right,top,bottom等屬性在正常文檔流中偏移自身位置。同樣可以用z-index分層設(shè)計(jì)。#p#

  2.定位的形象解釋

 我先來(lái)架設(shè)一個(gè)虛擬的場(chǎng)景:有一個(gè)矩形的房間,里面還有一個(gè)水桶裝了些水,水里還浸泡著一個(gè)西瓜,這個(gè)房間半空中還有不少的鉤子用于掛東西用?,F(xiàn)在我把網(wǎng)頁(yè)元素與上面物件對(duì)應(yīng)上,那么房間就是一個(gè)網(wǎng)頁(yè),水桶是網(wǎng)頁(yè)中的一個(gè)板塊,桶中的水就是文本流,西瓜就是將要被定位的對(duì)象。

  (1)貢獻(xiàn)的CSS絕對(duì)定位(absolute)

 對(duì)照前面解釋?zhuān)绻鞴媳毁x予CSS絕對(duì)定位,那么就等于把西瓜從水中撈起來(lái)掛在半空中的鉤子上,水桶中西瓜原來(lái)占用的空間水會(huì)自動(dòng)填補(bǔ)它(CSS絕對(duì)定位對(duì)象會(huì)讓出自己原先占用位置,所以說(shuō)它是貢獻(xiàn)的)。此時(shí)如果之前沒(méi)有對(duì)水桶進(jìn)行定位設(shè)定,那么被拿起的西瓜位置不會(huì)再受水桶位置影響,水桶怎么移動(dòng),西瓜還是掛在原來(lái)位置,至于西瓜要怎放,則以房間左上角(body左上角)為準(zhǔn),用left,right,top,bottom值來(lái)定位。

  但是如果水桶也給出了定位設(shè)置(通常是CSS相對(duì)定位,下面有講到這一實(shí)用技巧),此時(shí)西瓜的擺放就沒(méi)有那么自由了,盡管此時(shí)西瓜被拿起來(lái)了不會(huì)影響水桶中的水(文本流),但它還是要聽(tīng)桶的話,桶會(huì)告訴西瓜“你可以活動(dòng),但應(yīng)該在我的范圍內(nèi)走動(dòng),比方說(shuō)我要你在我左上方1米處,你就要跟死這一點(diǎn),我走你也要跟著走”,如果桶中有很多個(gè)西瓜,可以全部拿出來(lái)吊到半空中,它們將被安排在不同高度的空間(層),所以在房頂垂直往下看,有可能看到不同西瓜層疊在一起的情況(這個(gè)所謂的高度在網(wǎng)頁(yè)中是不存在的,就像FLASH動(dòng)畫(huà)中的不同層上安排了元素,但它們?cè)诳磿r(shí)不會(huì)有深度感覺(jué))。可見(jiàn)CSS絕對(duì)定位的對(duì)象參考目標(biāo)是它的父級(jí),專(zhuān)業(yè)稱(chēng)之為包含塊。

  (2)自私的CSS相對(duì)定位(relative)

  CSS相對(duì)定位一個(gè)最大特點(diǎn)是:自己通過(guò)定位跑開(kāi)了還占用著原來(lái)的位置,不會(huì)讓給他周?chē)闹T如文本流之類(lèi)的對(duì)象。CSS相對(duì)定位也比較獨(dú)立,做什么事它自己說(shuō)了算,要定位的時(shí)候,它是以自己本身所在位置偏移的(相對(duì)對(duì)象本身偏移)。再拿前邊作比如來(lái)解,那么此時(shí)西瓜似乎是有魔法的,如果西瓜通過(guò)CSS相對(duì)定位在水桶中偏移了你會(huì)看到一個(gè)現(xiàn)實(shí)生活中不存在的現(xiàn)象:水中有一個(gè)地方水凹下去了,周?chē)乃荒芴钛a(bǔ)它,西瓜看起來(lái)在旁邊,如果攪動(dòng)一下桶中的水,那個(gè)凹的位置會(huì)發(fā)現(xiàn)改變(文本流對(duì)CSS相對(duì)定位對(duì)象還存在影響),但是凹處到西瓜出現(xiàn)的距離始終保持一致??梢?jiàn)文本流與它之間還會(huì)互相影響,因?yàn)閷?duì)象并沒(méi)有真正脫離文本流,就像有兩個(gè)人在同一層樓水平移動(dòng)的過(guò)程中會(huì)有碰頭的機(jī)會(huì)。

  (3)總結(jié)兩種定位的特征

  CSS絕對(duì)定位就像是把不同對(duì)象安排到了一棟高樓的不同樓層(一般指不是第一層,我們這里理解為文本流就放在首層),它們互不影響,但是它們?cè)趺匆苿?dòng)與你樓的地基和面積(父級(jí))有關(guān)。CSS相對(duì)定位指對(duì)象還是在首層樓與文本流一起存放,它們之間肯定存在影響。

  (4)對(duì)特殊情況的補(bǔ)充

  在用CSS相對(duì)定位和CSS絕對(duì)定位的時(shí)候,有一種情況是它們的定位值用到了負(fù)值則對(duì)象可沿相反方向移動(dòng),剛才說(shuō)到的把對(duì)象安排在一棟樓的不同層,如果某個(gè)對(duì)象一開(kāi)始就是背靠著最外邊墻的,此時(shí)再用一個(gè)負(fù)值定位它,它就會(huì)神奇般地跑出墻外去了,當(dāng)然現(xiàn)實(shí)中可沒(méi)有這種驚險(xiǎn)而又神奇的事發(fā)生,本人只為了延用上面的比如作形象解釋。
 

【編輯推薦】

  1. CSS相對(duì)定位和絕對(duì)定位區(qū)別揭秘
  2. JavaScript動(dòng)態(tài)創(chuàng)建div屬性和樣式
  3. CSS中border和clear兩大屬性用法揭秘
  4. 深入理解DIV+CSS絕對(duì)定位和相對(duì)定位
  5. 解讀DIV CSS網(wǎng)頁(yè)布局中CSS無(wú)效十個(gè)原因

 

 

責(zé)任編輯:佚名 來(lái)源: seocn.info
相關(guān)推薦

2010-08-16 08:54:48

DIVCSS

2010-08-17 11:10:16

DIV+CSS

2010-08-16 11:28:02

DIV

2010-08-26 16:48:48

DIV絕對(duì)定位相對(duì)定位

2010-09-14 16:39:26

CSS DIV相對(duì)定位CSS DIV絕對(duì)定位

2010-09-06 11:17:19

CSS相對(duì)定位CSS絕對(duì)定位

2010-09-10 11:32:23

CSS絕對(duì)定位CSS相對(duì)定位

2010-09-10 13:07:51

CSS DIV絕對(duì)定位CSS DIV固定定位

2010-09-01 14:02:27

絕對(duì)定位浮動(dòng)CSS

2010-08-25 14:56:15

CSS相對(duì)定位

2010-09-14 16:57:29

DIV絕對(duì)定位CSS

2010-08-25 14:45:57

CSS絕對(duì)定位

2010-09-14 17:20:03

CSS DIV相對(duì)定位

2010-08-26 16:40:35

DIV定位

2010-09-14 16:20:19

DIV定位

2010-09-14 17:27:12

DIV CSS定位

2010-09-08 16:22:32

PositionCSS

2010-08-24 11:25:06

DIVCSS

2010-08-23 15:51:54

paddingmargin

2010-08-25 15:56:10

CSSPositioning定位
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)