IE 6中的高度属性表现得很奇怪

时间:2009-05-06 19:02:32

标签: html internet-explorer-6

简单问题(我希望)

我有一个div:

用css:

.break {position:relative; height:1px; background-color:#555555; margin:5px 10px 10px 10px;}

这个div在IE 6中显示为约10-20px厚的线? ...在任何其他浏览器中都可以正常工作

任何提示都会受到赞赏,...谢谢..

安德鲁

2 个答案:

答案 0 :(得分:3)

设置

overflow: hidden;
<。> to .break应解决问题。

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

答案 1 :(得分:2)

如果没有看到完整的HTML标记,很难确定,但很可能这是因为IE 6在怪癖模式下渲染了盒子模型[1]。为了让IE 6使用标准模式,请确保在HTML页面的开头明确声明doctype:

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

如果您使用的是XML doctype,请确保您没有使用XML声明。如果在doctype标头之前有一个XML声明,IE 6将退回到quirks模式。如果您使用的是XML doctype,则标题应如下所示:

<!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