2012-10-11 35 views
3

this page我有一个200x200的蓝色背景的身体。为什么我的身体的背景颜色渗出其边界?

但是,背景应用于整个窗口?

这是为什么?

下面是代码:https://gist.github.com/3869589/9df1c4de67ae227aecfb57ee16ff9eaade788727

浏览器的我已经对测试:FF 16和Chrome 22

+1

不知道,对html标签应用背景“修复”它。 –

+0

你可以使用'div'来阻止。把它放在整个窗户上。 – FamZheng

+2

+1是一个很好的问题。答案是:因为很久以前,身体是唯一可以获得背景的东西,并且存在关于填充和滚动以及背景与html元素相混淆的问题。既然现代浏览器允许为''和''设置单独的CSS属性,那么仍然存在一些方便的传统行为,它们表示“如果主体具有某些属性并且HTML没有设置它们,则将它们放在HTML“。 _(不是写成答案,因为我没有资料或细节来支持它)。_ – Phrogz

回答

2

我会把200x200的蓝框它自己的标签内的体内。

<style> .blue-box{ width:200px; height:200px; background:blue; } </style> 

<body> 
    <div class="blue-box"></div> 
</body> 
+0

那么,body标签实际上可以用作常规的块级元素,所以它不是必需的。 –

+0

我把你的语言改为了我,而不是你:) –

+0

我不是问我怎么能避免它,我想知道为什么背景应用于''元素而不是''。 – h2o

相关问题