日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

详解div+css相对定位和绝对定位用法

發(fā)布時(shí)間:2023/12/9 编程问答 50 豆豆
生活随笔 收集整理的這篇文章主要介紹了 详解div+css相对定位和绝对定位用法 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

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

(1)語(yǔ)法

?

  position:static|absolute|fixed|relative

?

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


?(2)說(shuō)明

  相對(duì)定位(relative)相對(duì)定位是一個(gè)非常容易掌握的概念。如果對(duì)一個(gè)元素進(jìn)行相對(duì)定位,它將出現(xiàn)在它所在的位置上。然后,可以通過(guò)設(shè)置垂直或水平位置,讓這個(gè)元素“相對(duì)于”它的起點(diǎn)進(jìn)行移動(dòng)。

? ? ? ? ??如果將 top 設(shè)置為 20px,那么框?qū)⒃谠恢庙敳肯旅?/span> 20 像素的地方。如果left 設(shè)置為 30 像素,那么會(huì)在元素左邊創(chuàng)建 30 像素的空間,也就是將元素向右移動(dòng)。


?

[css]
  • #box_relative?{??
  • ??position:?relative;??
  • ??left:?30px;??
  • ??top:?20px;??
  • }??

  • 如下圖所示:


    注意,在使用相對(duì)定位時(shí),無(wú)論是否進(jìn)行移動(dòng),元素仍然占據(jù)原來(lái)的空間。因此,移動(dòng)元素會(huì)導(dǎo)致它覆蓋其它框。



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

    ? ? ? 絕對(duì)定位使元素的位置與文檔流無(wú)關(guān),因此不占據(jù)空間。這一點(diǎn)與相對(duì)定位不同,相對(duì)定位實(shí)際上被看作普通流定位模型的一部分,因?yàn)樵氐奈恢孟鄬?duì)于它在普通流中的位置。

    普通流中其它元素的布局就像絕對(duì)定位的元素不存在一樣:

    ?

    [css]
  • #box_relative?{??
  • ??position:?absolute;??
  • ??left:?30px;??
  • ??top:?20px;??
  • }??


  • ? ? ? ?絕對(duì)定位的元素的位置相對(duì)于最近的已定位祖先元素,如果元素沒(méi)有已定位的祖先元素,那么它的位置相對(duì)于最初的包含塊



    ?

    2.定位的形象解釋

    ?

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

    ?

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

    ?

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

    ?

      但是如果水桶也給出了定位設(shè)置(通常是相對(duì)定位,下面有講到這一實(shí)用技巧),此時(shí)西瓜的擺放就沒(méi)有那么自由了,盡管此時(shí)西瓜被拿起來(lái)了不會(huì)影響水桶中的水(文本流),但它還是要聽(tīng)桶的話(huà),桶會(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)絕對(duì)定位的對(duì)象參考目標(biāo)是它的父級(jí),專(zhuān)業(yè)稱(chēng)之為包含塊。

    ?

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

    ?

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

    ?

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

    ?

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

    ?

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

    ?

      在用相對(duì)定位和絕對(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ā)生,本人只為了延用上面的比如作形象解釋。

    轉(zhuǎn)載于:https://www.cnblogs.com/hsw-2013/p/3174977.html

    總結(jié)

    以上是生活随笔為你收集整理的详解div+css相对定位和绝对定位用法的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

    如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。