有人可以請爲我闡明這一點。我遇到了一個更大項目的工作,需要理解爲什麼會發生這種情況。相對定位的div重疊 - 共享相同的像素行
對於一個非常簡單的例子,假設我們有兩個相對定位的div。一個在另一個之上。每個100x100px。邏輯上,第一個div offset().top
將爲0px。它的高度爲100px。所以它的底部偏移量(offset().top + height())
應該是100px;
相對於其他div定位的第二個div應該有101px的offset().top
對不對?否則,第二個div的頂部與第一個div的底部重疊1px。
但事實並非如此。看到這個jsfiddle的例子:http://jsfiddle.net/U4XH4/當我輸出的第一個div的底部和第二個div的頂部都顯示爲100px。 Tihs對我來說沒有意義!
任何澄清將不勝感激。很抱歉,如果這是一個非常愚蠢的問題...
HTML:
<div id="d1"></div>
<div id="d2"></div>
<p>click</p>
CSS:
body{
margin:0;
}
div{
width:100px;
height:100px;
background:green;
}
的jQuery:
$(function(){
$('p').click(function(){
$('div').each(function(){
$this = $(this);
var top = $this.offset().top;
var bottom = ($this.offset().top + $this.height());
console.log('top: '+top);
console.log('bottom: '+bottom);
});
});
});