2010-10-21 26 views
4

我使用DOCTYPE:,为什么在此代码中有填充底部?

http://www.w3.org/TR/html4/strict.dtd 

全码:

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> 
<HTML> 
<BODY> 
<div style="border:1px solid red;background-color:blue;"><img src="http://www.google.com/intl/en_ALL/images/srpr/logo1w.png"></div> 
</BODY> 
</HTML> 

你可以检查出来here

在Chrome或Firefox,为什么对底部填充?

如何解决呢?

(如果我删除的文档类型,或在IE浏览器,它是好)

alt text

回答

1

编辑:jleedev有正确的答案。不删除这一点,因为它往往是在回答这类问题的

不同的浏览器有不同的元素“默认”样式。一种流行的方法是使用“CSS Reset”样式表,设置一切中性值给你,这样你可以得到跨浏览器一致的结果。

+1

已在此情况下,没有任何影响。 CSS 2.1建议,图像应该有显示:默认情况下,内联无论如何 - 注意,复位样式更关注的是字体,颜色,边距和填充,并不会改变任何显示属性。 – 2010-10-21 04:40:41

+1

@jleedev:你是完全正确的。我没有花时间真正看看他在说什么,通常在不同浏览器上的随机边距和填充意味着用户代理样式表是不同的。投票你 – 2010-10-21 05:01:21