取得非絕對定位的元素的位置

2021-04-13 13:02:05 字數 959 閱讀 8175

關於offsettop、offsetleft、offsetwidth、offsetheight的說明

最近群裡有好群民在問關於offsettop、offsetleft、offsetwidth、offsetheight等的意思及其用法,現簡單總結如下:

假設 obj 為某個 html 控制項。

obj.offsettop :     指 obj 距離上方或上層控制項的位置,整型,單位畫素。

obj.offsetleft :      指 obj 距離左方或上層控制項的位置,整型,單位畫素。

obj.offsetwidth  :  指 obj 控制項自身的寬度,整型,單位畫素。

obj.offsetheight  :  指 obj 控制項自身的高度,整型,單位畫素。

現對上面提到的「上方或上層」與「左方或上層」控制項作個說明。

例如:

「提交」按鈕的 offsettop 指「提交」按鈕距「tool」層上邊框的距離,因為距其上邊最近的是 「tool」 層的上邊框。

「重置」按鈕的 offsettop 指「重置」按鈕距「tool」層上邊框的距離,因為距其上邊最近的是 「tool」 層的上邊框。

「提交」按鈕的 offsetleft 指「提交」按鈕距「tool」層左邊框的距離,因為距其左邊最近的是 「tool」 層的左邊框。

「重置」按鈕的 offsetleft 指「重置」按鈕距「提交」按鈕右邊框的距離,因為距其左邊最近的是「提交」按鈕的右邊框

offsetparent:大多說offsetparent返回body

例子:取得非絕對定位的元素的位置

var offset = function (o)

while (o = o.offsetparent);

return ;

};var pos = offset(document.getelementbyid("元素id"));

alert(pos.x + ":" + pos.y);

CSS之絕對定位的位置以及子元素在父容器的居中顯示

元素開啟了絕對定位 水平布局 left margin left border left padding left width padding right border right margin right right 包含塊的寬度 此時規則和之前一樣,只是多了left和right這兩個值 當發生過度...

絕對定位的元素怎麼居中顯示

如果要問如何css實現絕對定位元素的居中效果,很多人心裡已經有答案了。相容性不錯的主流用法是 element 但,這種方法有乙個很明顯的不足,就是需要提前知道元素的尺寸。否則margin負值的調整無法精確。此時,往往要借助js獲得。css3的興起,使得有了更好的解決方法,就是使用transform代...

關於元素絕對定位的父元素問題

在乙個技術群裡看到別人爭論關於子元素絕對定位,父元素要是也是絕對定位了,子元素應該選擇以誰為參照物的問題,我剛開始想都沒想就覺得它應該選擇父元素的父元素為參照物,但是自己寫個例子測試了一下,發現自己被以前書上的那些教程引導錯了,經過測試發現子元素的如果是絕對定位,他的參照父元素應該選擇離它最近的乙個...