IE8将CSS样式集在一起

IE8将CSS样式集在一起,css,internet-explorer-8,Css,Internet Explorer 8,我在IE8的开发者模式下调试我的应用程序,我遇到了一些非常奇怪的行为。IE8的开发模式通常会在新行上显示每个CSS样式,但在这些情况下不会。。。举三个例子: #1 .messages .read background-color: rgb(234,234,234); HEIGHT: 1.5em padding-top: 0.3em #2 a:link color : rgb(80,80,82); TEXT-DECORATION: none #3 #messaging .b

我在IE8的开发者模式下调试我的应用程序,我遇到了一些非常奇怪的行为。IE8的开发模式通常会在新行上显示每个CSS样式,但在这些情况下不会。。。举三个例子:

#1
.messages .read    
  background-color: rgb(234,234,234); HEIGHT: 1.5em
  padding-top: 0.3em

#2
a:link
  color : rgb(80,80,82); TEXT-DECORATION: none

#3
#messaging .body
  border-bottom: rgb(...) 1px solid
  filter : progid:DXImageTransform.Microsoft.gradient(startColorstr='#FDFDFD', endColorstr='#C2C2C2'); BORDER-LEFT: rgb(...) 1px solid; PADDING-BOTTOM: 1.5em; MARGIN: 15px 0 25px; etc.
如你所见,IE在这三种情况下表现得很奇怪,特别是对于
#3
,我得到了一些非常奇怪的人工制品,比如我的渐变框周围有一个难看的深灰色边框

有没有已知的方法可以避免这种行为

更新-梯度人工制品修复
#3
通过添加
位置:relative,异常容易地修复到该样式。显然IE需要这样才能正确渲染其渐变


我仍然有兴趣知道为什么IE将一些风格集中在一行,以及这种怪癖是否有任何实际效果。

在您提供的示例中,至少有一些缺少的分号。这很可能就是问题所在

正如评论中所建议的:尝试验证您的CSS。这是来自W3的一个:


在您提供的样本中,至少缺少一些分号。这很可能就是问题所在

正如评论中所建议的:尝试验证您的CSS。这是来自W3的一个:


我在IE的开发工具中看到过这种情况,在样式表出现某种语法错误的情况下。我也遇到过这种情况,但这可能是一个小故障;我认为它仍然正确地呈现了规则。。。根据它自己的标准是正确的。CSS中仍然可能有语法错误,也就是说,可能只是碰巧得到了正确的结果。通过lint测试运行它。我在IE的开发工具中看到过这种情况,在样式表出现某种语法错误的情况下。我也遇到过这种情况,但这可能是一个小故障;我认为它仍然正确地呈现了规则。。。根据它自己的标准是正确的。CSS中仍然可能有语法错误,也就是说,可能只是碰巧得到了正确的结果。让它通过皮棉测试。