2014-08-29 56 views
0

我的印象是,$('body').offset().top应返回0上没有别的,但显然它不断返回8。我从我的网页中删除了所有不必要的代码,它仍然返回8

以下是我有:

<!DOCTYPE html> 
<html lang="en"> 
    <head> 
     <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> 
     <meta charset="utf-8" /> 
     <title></title> 
    </head> 
    <body> 
     <script> 
      $(document).ready(function() { 
       console.log($('body').offset().top); 
      }) 
     </script> 
    </body> 
</html> 

这是字面上的在我的代码的一切。这里是JSFiddle:http://jsfiddle.net/Lspkx2su/

+2

身体的边距默认为8,尝试将其设置为0或使用css重置。 – 2014-08-29 07:13:34

+0

重置的替代方法是normalize.css,它保留了有用的设置并使其在不同浏览器中保持一致。这有点偏离主题,但值得注意的是:http://necolas.github.io/normalize.css/ – 2014-08-29 07:22:43

回答

6

默认的CSS。插入此:

<style> 
    html, body { margin: 0 } 
</style> 

并再试一次。

0

默认情况下,body标签的样式会占用网页中的空间。

试试这个代码,你就会明白 -

的HTML

<body> 
<div class="wrapper"> 
Hello World 
</div> 
</body> 

下面CSS

.wrapper{ 
border: 1px solid red; 
} 

当你运行上面的代码,你会看到你的“你好世界“会显示一个小的偏移量。这是HTML/CSS中的默认值。

但是,@amadan是绝对正确的。您应该始终使用以下内容来启动您的网页CSS。不会发生抵消问题。

body{ 
    margin:0;padding:0; 
    /* considering your outermost div to be the wrapper of your whole page */ 
}