我在 IE8/9 中遇到了一个关于其渐变过滤器的特性。考虑以下样式:
background:#F2F2F2;
background:-webkit-linear-gradient(top,#F2F2F2,#CECECE);
background: -moz-linear-gradient(top,#F2F2F2,#CECECE);
background: -o-linear-gradient(top,#F2F2F2,#CECECE);
background: linear-gradient(to bottom,#F2F2F2,#CECECE);
-ms-filter:"progid:DXImageTransform.Microsoft.Gradient(startColorStr='#F2F2F2',endColorStr='#CECECE',GradientType=0)";
渐变在带有 的元素上正确显示display:block;
。然而,当应用于display:table;
IE9 时,将显示#F2F2F2
在渐变的顶部。为了暂时解决这个问题,我删除了背景颜色,但当然现在我没有纯色后备。
我的问题是:为什么要这样做以及(no-js)解决方法是什么?