CSS线性渐变不适用于实时服务器(仅限IE),在localhost上运行正常

时间:2012-09-28 09:06:56

标签: css linear-gradients

我刚刚推出了一个新的内联网,我已经有一段时间了。 一切都很好(除了不可避免的以用户为中心的问题和一些错误)

然而它只是变得明显(现在我有机会实际看前端而不是黑客代码来解决问题),由于某种原因我的css线性渐变不起作用。

这对我来说非常奇怪,因为当我在其测试环境(localhost)中查看相同的网站时,渐变可以完成所有的荣耀。在同一台PC上,在同一个浏览器中(打开2个标签,一个本地,一个外部)

所有其他css(在相同的样式文件中)都可以正常工作。

#PageTitleBox{
position:absolute;
left:0px;
top:2px;
width:169px;
z-index:3;
padding-top:0px;
padding-bottom:10px;
padding-left:10px;
padding-right:10px;
background-color:#A9D4CC;
background-image: -webkit-linear-gradient(180deg, #A9D4CC, #7DB4B3);
background-image: -moz-linear-gradient(180deg, #A9D4CC, #7DB4B3);
background-image: -o-linear-gradient(180deg, #A9D4CC, #7DB4B3);
background-image: linear-gradient(180deg, #A9D4CC, #7DB4B3);
-ms-filter: "progid:DXImageTransform.Microsoft.gradient(GradientType=1, startColorstr='#7DB4B3', endColorstr='#A9D4CC')";
height: 55px;}

2 个答案:

答案 0 :(得分:1)

行。我估计你可能已经将IE9切换到兼容性视图。 (http://stackoverflow.com/questions/3726357/why-does-ie9-switch-to-compatibility-mode-on-my-website)。

您可以在HTML HEAD中包含<meta http-equiv="X-UA-Compatible" content="IE=Edge"/>以指示IE不执行此操作,或使用服务器设置等效的HTTP响应标头。

如果原因是您的实时服务器被IE视为您的Intranet区域的一部分,IE可能会忽略这一点。在这种情况下,您必须在兼容性视图设置中将IE配置为不使用Intranet站点的兼容性视图。

答案 1 :(得分:0)

您可以将渐变对象的“已启用”属性设置为true。

-ms-filter: "progid:DXImageTransform.Microsoft.gradient(enabled='true', GradientType=1, startColorstr='#7DB4B3', endColorstr='#A9D4CC')";