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

深入學習DIV+CSS之絕對定位和相對定位用法

開發(fā) 前端
在用DIV+CSS控制排版過程中,定位一直被人認為是一個難點,本文向大家介紹一下DIV+CSS之絕對定位和相對定位的方法,希望對你有所幫助。

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

前言

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

閱讀建議

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

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

(1)語法

position:static|absolute|fixed|relative


(2)說明

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

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

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

2.定位的形象解釋

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

(1)貢獻的絕對定位(absolute)

對照前面解釋,如果西瓜被賦予絕對定位,那么就等于把西瓜從水中撈起來掛在半空中的鉤子上,水桶中西瓜原來占用的空間水會自動填補它(絕對定位對象會讓出自己原先占用位置,所以說它是貢獻的)。此時如果之前沒有對水桶進行定位設(shè)定,那么被拿起的西瓜位置不會再受水桶位置影響,水桶怎么移動,西瓜還是掛在原來位置,至于西瓜要怎放,則以房間左上角(body左上角)為準,用left,right,top,bottom值來定位。

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

(2)自私的相對定位(relative)

相對定位一個最大特點是:自己通過定位跑開了還占用著原來的位置,不會讓給他周圍的諸如文本流之類的對象。相對定位也比較獨立,做什么事它自己說了算,要定位的時候,它是以自己本身所在位置偏移的(相對對象本身偏移)。再拿前邊作比如來解,那么此時西瓜似乎是有魔法的,如果西瓜通過相對定位在水桶中偏移了你會看到一個現(xiàn)實生活中不存在的現(xiàn)象:水中有一個地方水凹下去了,周圍的水不能填補它,西瓜看起來在旁邊,如果攪動一下桶中的水,那個凹的位置會發(fā)現(xiàn)改變(文本流對相對定位對象還存在影響),但是凹處到西瓜出現(xiàn)的距離始終保持一致??梢娢谋玖髋c它之間還會互相影響,因為對象并沒有真正脫離文本流,就像有兩個人在同一層樓水平移動的過程中會有碰頭的機會。

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

絕對定位就像是把不同對象安排到了一棟高樓的不同樓層(一般指不是第一層,我們這里理解為文本流就放在首層),它們互不影響,但是它們怎么移動與你樓的地基和面積(父級)有關(guān)。相對定位指對象還是在首層樓與文本流一起存放,它們之間肯定存在影響。

(4)對特殊情況的補充

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

【編輯推薦】

  1. Opera CTO:HTML5與CSS3是發(fā)展趨勢
  2. 主流瀏覽器CSS 3和HTML 5兼容清單
  3. CSS與JS性能問題初步解決方案
  4. 高手總結(jié)CSS書寫技巧
  5. DIV+CSS開發(fā)過程中影響SEO的制作細節(jié)
責任編輯:佚名 來源: cnblogs.com
相關(guān)推薦

2010-09-10 12:40:06

CSS相對定位CSS絕對定位

2010-08-17 11:10:16

DIV+CSS

2010-09-14 17:20:03

CSS DIV相對定位

2010-08-16 11:05:54

DIV+CSS

2010-08-16 11:28:02

DIV

2010-08-26 16:48:48

DIV絕對定位相對定位

2010-09-14 16:39:26

CSS DIV相對定位CSS DIV絕對定位

2010-09-06 11:17:19

CSS相對定位CSS絕對定位

2010-09-10 11:32:23

CSS絕對定位CSS相對定位

2010-09-10 13:07:51

CSS DIV絕對定位CSS DIV固定定位

2010-09-01 14:02:27

絕對定位浮動CSS

2010-08-25 14:56:15

CSS相對定位

2010-09-14 17:27:12

DIV CSS定位

2010-09-14 16:57:29

DIV絕對定位CSS

2010-08-25 14:45:57

CSS絕對定位

2010-08-26 16:40:35

DIV定位

2010-09-14 16:20:19

DIV定位

2010-08-26 09:58:01

CSS clear

2010-08-24 11:25:06

DIVCSS

2010-08-19 12:55:55

CSSMarginPadding
點贊
收藏

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