2009-05-06 28 views
0

简单的问题(希望)height属性作用怪异

我有一个div:

利用CSS:

。BREAK {位置:相对;高度:1px的;背景-color:#555555; margin:5px 10px 10px 10px;}

这个div在IE 6中显示为一个约10-20像素厚的线? ......在任何其他浏览器

任何提示,将不胜感激,..感谢工作正常..

安德鲁

回答

3

设置

overflow: hidden; 

来。BREAK应该解决的问题。

IE只为内容保留最小空间(保留的空间等于为此元素设置的行高或字体大小 - 不准确记得)。在所有其他浏览器中,如果没有足够的空间,则内容会从容器中流出。 IE伸展容器。因此,将溢出设置为隐藏可解决问题。

+0

要命,,感谢您的解释太... 。这解决了我的一些IE 6问题 – Andrew 2009-05-06 19:30:06

2

没有看到完整的HTML标记,很难确切知道,但这可能是由于IE 6渲染盒子模型的怪癖模式[1]。为了让IE 6使用的标准模式,确保你明确你的HTML页的开头声明文档类型:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 
"http://www.w3.org/TR/html4/loose.dtd"> 

如果您使用的是XML文档类型,请确保您没有与开始XML声明。如果您在doctype标头之前有一个XML声明,那么IE 6将回到怪癖模式。如果您使用的是XML文档类型,您的标题应该是这样的:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 

不是这个:

<?xml version="1.0" encoding="UTF-8"?> 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 

[1] http://en.wikipedia.org/wiki/Quirks_mode