我有HTML按钮样式。它在Fire fox中运行良好,但在IE中它无法正常渲染。我正在使用IE7。但它应该适用于7以上的所有IE版本。
在FF中:
但在IE中,它的外观却不同:
以下是我的CSS风格:
button.skip {
-moz-border-bottom-colors: none;
-moz-border-left-colors: none;
-moz-border-right-colors: none;
-moz-border-top-colors: none;
background-color: #8C9CBF;
background-image: -moz-linear-gradient(center top , #8C9CBF 0%, #546A9E 50%, #36518F 50%, #3D5691 100%);
border-color: #172D6E #172D6E #0E1D45;
border-image: none;
border-radius: 5px 5px 5px 5px;
border-style: solid;
border-width: 1px;
box-shadow: 0 1px 0 0 #B1B9CB inset;
color: #FFFFFF;
font: bold 16px/1 "helvetica neue",helvetica,arial,sans-serif;
padding: 7px 0 8px;
text-align: center;
text-decoration: none;
text-shadow: 0 -1px 1px #000F4D;
width: 150px;
}
如何在IE中显示类似于FF的按钮?谢谢!
答案 0 :(得分:1)
试试这个:
-webkit-border-radius: 5px;
border-radius: 5px;
background: #8c9cbf; /* Old browsers */
background: -moz-linear-gradient(top, #8c9cbf 0%, #546a9e 50%, #36518f 50%, #3d5691 100%); /* FF3.6+ */
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#8c9cbf), color-stop(50%,#546a9e), color-stop(50%,#36518f), color-stop(100%,#3d5691)); /* Chrome,Safari4+ */
background: -webkit-linear-gradient(top, #8c9cbf 0%,#546a9e 50%,#36518f 50%,#3d5691 100%); /* Chrome10+,Safari5.1+ */
background: -o-linear-gradient(top, #8c9cbf 0%,#546a9e 50%,#36518f 50%,#3d5691 100%); /* Opera 11.10+ */
background: -ms-linear-gradient(top, #8c9cbf 0%,#546a9e 50%,#36518f 50%,#3d5691 100%); /* IE10+ */
background: linear-gradient(to bottom, #8c9cbf 0%,#546a9e 50%,#36518f 50%,#3d5691 100%); /* W3C */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#8c9cbf', endColorstr='#3d5691',GradientType=0 ); /* IE6-9 */
答案 1 :(得分:1)
这是您必须添加的按钮才能在IE中使用的
background: -ms-linear-gradient(top, #dcdedb 0%, #c9cbc8 100%);
/* IE10+ */
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#dcdedb', endColorstr='#c9cbc8', GradientType=0);
/* IE6-9 */
编辑:NEW DEMO
对于IE9及以下版本,您将无法使用CSS3渐变,因为 IE9,IE8,IE7不支持CSS3渐变。另一种方法是创建 PNG 按钮,并将按钮的背景图像分配给 PNG 。
另一种方法是使用 SVG 。但是我不建议这样做,因为仅仅为了 IE7 创建一个花式按钮而使用 SVG 是没有意义的。
答案 2 :(得分:1)
答案 3 :(得分:0)
您可以尝试IE特定的CSS
background: -ms-linear-gradient(top, #8C9CBF 0%, #546A9E 50%, #36518F 50%, #3D5691 100%); // IE 10
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#546A9E', endColorstr='#3D5691',GradientType=0 ); // IE 6-9
根据您的需要修改值。
答案 4 :(得分:0)
您可以使用
Colorzilla Gradient Generator:http://colorzilla.com/gradient-editor/
和CSS3Pie:http://css3pie.com
试试这个:
background: #8c9cbf; /* Old browsers */
/* IE9 SVG, needs conditional override of 'filter' to 'none' */
background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzhjOWNiZiIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjUwJSIgc3RvcC1jb2xvcj0iIzU0NmE5ZSIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjUxJSIgc3RvcC1jb2xvcj0iIzM2NTE4ZiIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiMzZDU2OTEiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
background: -moz-linear-gradient(top, #8c9cbf 0%, #546a9e 50%, #36518f 51%, #3d5691 100%); /* FF3.6+ */
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#8c9cbf), color-stop(50%,#546a9e), color-stop(51%,#36518f), color-stop(100%,#3d5691)); /* Chrome,Safari4+ */
background: -webkit-linear-gradient(top, #8c9cbf 0%,#546a9e 50%,#36518f 51%,#3d5691 100%); /* Chrome10+,Safari5.1+ */
background: -o-linear-gradient(top, #8c9cbf 0%,#546a9e 50%,#36518f 51%,#3d5691 100%); /* Opera 11.10+ */
background: -ms-linear-gradient(top, #8c9cbf 0%,#546a9e 50%,#36518f 51%,#3d5691 100%); /* IE10+ */
background: linear-gradient(to bottom, #8c9cbf 0%,#546a9e 50%,#36518f 51%,#3d5691 100%); /* W3C */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#8c9cbf', endColorstr='#3d5691',GradientType=0 ); /* IE6-8 */
以及IE9中的支持:
<!--[if gte IE 9]>
<style type="text/css">
.gradient {
filter: none;
}
</style>
<![endif]-->
答案 5 :(得分:0)
检查这个CSS3 Gradient Generator
和这个
http://www.colorzilla.com/gradient-editor/
http://ie.microsoft.com/testdrive/graphics/cssgradientbackgroundmaker/