我在显示设置高度时遇到问题。
在我的CSS中,我为侧栏div设置了一个2150px的高度;它在firefox中显示正常但在ie中没有显示完整的高度。
我怎样才能显示我设定的高度ie?
提前致谢
源代码在
之下#sidebar_newspr{
width:160px;
min-height:2150px;
margin-top:1px; margin-right:2px;
border-right-style:solid; border-right-color:#900; border-right-width:1px;
float:left;
}
#sidebar_newspr a{
text-decoration:none;
color:#FFF;
font-size:12px; font-family:Verdana,Arial,Helvetica,sans-serif;
}
#sidebar_newspr a:hover{
color:#900;
}
答案 0 :(得分:2)
这是一个黑暗的镜头,因为你没有真正指定你正在测试它的IE版本。然而,min-height
要求IE7和IE8在标准模式下运行。要启用标准模式,您需要使用严格的!DOCTYPE
。
IE6中的在 Internet Explorer 7 中,min-height / max-height属性适用于浮动和绝对定位块,内联块元素和一些内部控件。它们不适用于未替换的内联元素,例如表列和行/列组。 (“被替换”元素具有内在维度,例如img或textArea。)
在 Internet Explorer 7 中,此属性仅在严格!DOCTYPE下启用。
min-height
仅适用于th
,td
和tr
元素。
答案 1 :(得分:0)
尝试使用条件评论:
<!--[if lt IE 9]> //will target IE less than version 9
<link href="/directroy/IE.css" rel="Stylesheet" type="text/css"/>
<![endif]-->
到你的head标签并使用这个新的样式表来定义你想要IE做什么。
#sidebar_newspr{
width:160px;
height:2150px; /*change to just height*/
margin-top:1px; margin-right:2px;
border-right-style:solid; border-right-color:#900; border-right-width:1px;
float:left;
}
您还可以使用多个条件注释来定位不同版本的IE。
像这样:
<!--[if IE 8]> //will target only IE 8
<link href="/directroy/IE.css" rel="Stylesheet" type="text/css"/>
<![endif]-->
然后尝试将您的doctype设置为strict:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
可能会工作,如果没有,那么我确定其他人有另一个想法:)
答案 2 :(得分:0)
某些版本的IE不喜欢min-height
,我尽量避免使用它。
作为一种快速的解决方案,不会像仅使用IE的样式那样权衡您的页面,只需说明height:2150px; min-height:2150px;
支持min-height
的浏览器将采用它,而不支持它的浏览器将忽略它