带有 CSS 的 IE7 中的背景渐变
声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow
原文地址: http://stackoverflow.com/questions/7257170/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me):
StackOverFlow
background gradients in IE7 with CSS
提问by FungyBytes
I am using the following bit of CSS to create a linear background gradient. It seems to work just fine in IE8/9, FF, Safari and chrome but not in IE7. IE7 shows a solid (green) background. Here is my code
我正在使用以下 CSS 来创建线性背景渐变。它似乎在 IE8/9、FF、Safari 和 chrome 中工作得很好,但在 IE7 中却没有。IE7 显示纯色(绿色)背景。这是我的代码
.menu_body a {
display:block;
color:#006699;
background: #008800;
/* Mozilla: */
background: -moz-linear-gradient(top, #0b71a4, #025f8e);
/* Chrome, Safari:*/
background: -webkit-gradient(linear,
left top, left bottom, from(#0b71a4), to(#025f8e));
/* MSIE */
filter: progid:DXImageTransform.Microsoft.Gradient(
StartColorStr='#0b71a4', EndColorStr='#025f8e', GradientType=0);
padding: 1px 18px;
}
回答by duri
In IE<=7, filters won't work unless element has layout.
在 IE<=7 中,除非元素具有layout ,否则过滤器将不起作用。
zoom: 1;
Be aware that it can break other things, so old good background-image
might be safe and reliable solution.
请注意,它可能会破坏其他东西,因此旧好background-image
可能是安全可靠的解决方案。
Also please note that your CSS lacks gradient properties for Opera, IE10 and updated syntax for Webkit.
另请注意,您的 CSS 缺少 Opera、IE10 的渐变属性和 Webkit 的更新语法。
回答by Kyle
回答by Grant Thomas
I'm unsure if the parameters of this transform are case sensitive - but seeing as most other CSS is, you could try:
我不确定此转换的参数是否区分大小写 - 但与大多数其他 CSS 一样,您可以尝试:
startColorstr='#0b71a4', endColorstr='#025f8e'
Notice the lower-case starting character, and lower-case str
suffix.
注意小写的起始字符和小写的str
后缀。