Internet explorer 如果我工作不正常

Internet explorer 如果我工作不正常,internet-explorer,css,conditional-comments,Internet Explorer,Css,Conditional Comments,我有一个div,我想对它应用一个渐变和一个背景图像(是的,在同一个元素上)。我知道只有当你的目标浏览器不是IE时才有可能。考虑到这一点,我想用纯色来代替渐变色,上面有一个图像,只用于IE 这是我的密码: background: url(../images/newsletter.png), -moz-linear-gradient(top, rgb(10,10,01) , rgb(5,5,5)); background: url(../images/newsletter.png), -webkit

我有一个div,我想对它应用一个渐变和一个背景图像(是的,在同一个元素上)。我知道只有当你的目标浏览器不是IE时才有可能。考虑到这一点,我想用纯色来代替渐变色,上面有一个图像,只用于IE

这是我的密码:

background: url(../images/newsletter.png), -moz-linear-gradient(top, rgb(10,10,01) , rgb(5,5,5));
background: url(../images/newsletter.png), -webkit-gradient(linear, left top, left bottom, from(#0a0a0a), to(#05050f));
background-repeat: no-repeat, repeat;
<!--[if IE]>
background: #000 url(../images/newsletter.png) center left no-repeat;
<![endif]-->
background:url(../images/newsletter.png),-moz线性渐变(top,rgb(10,10,01),rgb(5,5,5));
背景:url(../images/newsletter.png),-webkit渐变(线性、左上、左下、从(#0a0a0a)到(#05050f));
背景重复:不重复,重复;
问题在于,在声明FF/Chrome之前或之后,条件被忽略。(我已经测试过了,还有[if false]等等)
有什么想法吗?

你不会在CSS中加入这种条件;它会出现在你的HTML中。因此,使用IE修复程序创建一个新样式表,并在条件注释中链接到它:

<!--[if IE]>
<link rel="stylesheet" type="text/css" href="ie.css" />
<![endif]-->

它优雅地降级,没有难看的条件注释,并且在Internet Explorer上不完全优雅地降级。

您不会在CSS中添加这种条件注释;它会出现在你的HTML中。因此,使用IE修复程序创建一个新样式表,并在条件注释中链接到它:

<!--[if IE]>
<link rel="stylesheet" type="text/css" href="ie.css" />
<![endif]-->

它在没有难看的条件注释的情况下优雅地降级,并且不会在Internet Explorer上完全优雅地降级。

还有一件事:如果您确实必须使用条件注释,您应该指定一个版本,如下所示:
您的解决方案工作得很好,谢谢!另外,感谢IE有条件声明的澄清@VainFellowman感谢您的提示。还有一件事:如果您真的必须使用条件注释,您应该指定一个版本,如下所示:
您的解决方案非常有效,谢谢!另外,感谢IE有条件声明的澄清@VainFellowman谢谢你的提示。