獲取元素在頁面中的位置:
絕對定位:到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,絕對定位 如果需要這個絕對定位...