JQuery – .position不返回相对于父对象的偏移量

我正在使用.position找到元素相对于父元素的偏移量,但是它似乎返回一个值,该值是从父元素到祖先树的偏移量.

我有一个按钮,它包裹着一个div,它是该div的唯一元素. div被浮动了.如果真值在{left:200,top:0}的左边,则返回值为{left:780,top:370}的值.

我正在使用jquery 1.4

解决方法

如果我是正确的,我认为这是一个CSS问题,不一定是jQuery一个..
我的理解是,CSS“position”属性认值是static(不是绝对的,相对的),并且相对于未设置为static的第一个祖先计算定位.

如果元素没有不带静态位置的祖先,元素将相对于html块定位.

如果要将div相对于包装器div放置,请根据需要尝试将包装器div的position属性设置为static(relative,absolute)以外的其他属性.

这是一个简单的例子来演示这个..

<html>
  <style type="text/css">
    .divOuter { border:1px solid Green;  width:350px; height:50px; padding:2px; margin-left:80px; }
    .divInner{border:1px solid Blue;  width:200px; height:50px; padding:2px; position:absolute; left:100px;}
 </style>
 <body>
 <div class="divOuter">
  <div  class="divInner">
     positioned relative to html block 
  </div>
  </div>
      <div  class="divOuter" style="position:relative;">
   <div class="divInner">
     positioned relative to parent div
  </div>
  </div>
  </body>
  </html>

相关文章

页面搜索关键词突出 // 页面搜索关键词突出 $(function () {...
jQuery实时显示日期、时间 html: &lt;span id=&quot...
jQuery 添加水印 &lt;script src=&quot;../../../.....
中文:Sys.WebForms.PageRequestManagerParserErrorExceptio...
1. 用Response.Write方法 代码如下: Response.Write(&q...
Jquery实现按钮点击遮罩加载,处理完后恢复 思路: 1.点击按...