以下是应用的CSS并解决了这个问题,
background-color: rgba(91, 94, 85, 0.5) !important;
filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#7F5B5E55,endColorstr=#7F5B5E55);
filter:ms-linear-gradient(startColorstr=#7F5B5E55,endColorstr=#7F5B5E55); /*fix for round corner edges in IE9 and input mess rendering in all IE */
图片1:FF,Chrome& IE 9工作正常
图片2:IE8不太好
我不确定如何在IE8中正确修复此输入。我猜它发生了过滤器过滤器:ms-linear-gradient 的becoz,如果我在IE8背景颜色应用中删除此过滤器,但输入混乱如下图像。
如果我有这个过滤器输入正在IE8背景颜色正确呈现未按预期应用
谢谢,
Nithish
答案 0 :(得分:7)
您的代码问题:
background-color: rgba(91, 94, 85, 0.5) !important;
强> !important
标志很可能是多余的。filter:progid:DXImageTransform.Microsoft.gradient( ... );
强> -ms-filter: "...";
syntax is preferred in IE8+。 <强> filter:ms-linear-gradient(startColorstr=#7F5B5E55,endColorstr=#7F5B5E55);
强>
这开始麻烦了:
-ms-
,(开头用连字符)。-ms-linear-gradient
是 background
的值,而不是filter
。//fix for round corner edges in IE9
强>
CSS中的评论采用以下格式: /* comment */
没有例外。修正:
background-color: rgba(91, 94, 85, 0.5) !important;
filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#7F5B5E55,endColorstr=#7F5B5E55);
-ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorstr=#7F5B5E55,endColorstr=#7F5B5E55)";