獲取元素在頁面中的相對定位 絕對定位

2021-09-03 08:47:19 字數 1179 閱讀 2304

獲取元素在頁面中的位置:

絕對定位:到body的距離

相對定位:到視口的距離

絕對定位可以用以下封裝的函式進行取值:

function getpointab(node)

return ;

}

滑鼠滾輪滾動的距離取值:

滾動條滾動時,實際上是元素滾動的距離

var l = document.documentelement.scrollleft||document.body.scrollleft;

var t = document.documentelement.scrolltop||document.body.scrolltop;

根據以上兩個,可以得出,相對定位的封裝函式:

function getpointre(node)

var l = document.documentelement.scrollleft||document.body.scrollleft;

var t = document.documentelement.scrolltop||document.body.scrolltop;

return ;

}

注意:以上這些方法均是在border、margin為0時適用。

不過以上方法太複雜了,現在用getboundingclientrect()來代替。getboundingclientrect()方法返回元素的大小及其相對於視口的位置,也就是相對位置。

getboundingclientrect()方法返回的left和right是元素左上角的相對位置; right和bottom返回的是右下角的相對位置;height和width代表的是border-box的尺寸

左上角的相對位置和右下角的相對位置都知道了,就可以取到右上和左下角的相對位置,並且無論margin,border都會算進去的。就不用考慮那麼多。那麼

絕對位置,就是相對位置+滾動條滾動的距離 = 絕對位置

一般好用的東西相容性都不好,但是這個api是比較特殊的,它的相容性是非常好的,可以放心大膽的去用。

CSS中的相對定位,絕對定位

定位是我們做乙個網頁的時候經常用到的,有時候會用到相對定位,有時候會用到絕對定位,有時候會用到固定定位。最開始我剛接觸定位的時候,我就學的不是很明白,在這裡我打算好好寫一下css定位,方便我在記憶一遍,順便將來忘記的時候方便我回憶。相對定位就是針對元素本身的位置進行偏移,比如原本元素在頁面中間,你給...

css 中相對定位和絕對定位

1.css中定位機制有三種 標準文件流,浮動,絕對定位 2.絕對定位就屬於第三種定位,用到position屬性,下面就是具體設定 相對定位 相對於自身原有位置 就是普通流的時候 進行偏移 設定top,left.後 仍然處於標準文件流中 隨即擁有偏移屬性和z index屬性 絕對定位 建立了以包含塊為...

CSS中相對定位與絕對定位

看了幾個講解定位的部落格,覺得還不錯,分享之 部落格一 1,相對定位 請注意,相對定位並沒有脫離文件流,雖然表現區脫離了原來的文字流,但是在文字流中還還有此相對定位的 老窩 這點要特別注意,因為在實際應用中如果相對定位的位移數值過大,那麼原有的區域就會形成一塊空白。2,絕對定位 如果需要這個絕對定位...