为什么我的偏差通过-ms-filter矩阵没有在IE中应用?

时间:2013-06-03 04:58:12

标签: html css internet-explorer webpage skew

我一直在通过Chrome / Firefox建立一个网站,现在我在IE上看它,它已经非常破碎了。我预料到了这一点,但修复它比我想象的困难得多。

主要问题是我的网站使用了许多偏斜元素(它们被用作平行四边形),并且该偏斜未应用于IE。这些div被赋予类“parallelogram”,所以在我的代码中我写了:

div.parallelogram { position:absolute; top:0; right:25%; z-index:20; height:100%;
                    width:20%; margin:0;
                    background-color:#000; color:inherit;
                    -moz-transform:skew(-20deg);
                    -o-transform:skew(-20deg);
                    -webkit-transform:skew(-20deg);
                    -ms-filter:"progid:DXImageTransform.Microsoft.Matrix(M11=0.3, M12=1.3,
                      M21=0.7, M22=0, SizingMethod='auto expand')"; }

是的,我错过了“filter:”标签,但从我读过的标签来看,IE7或更低版​​本只需要该标签。我想让它至少在一个版本的IE上工作,然后我可以考虑其余的!

因此,当我使用Chrome查看此代码时,-ms-filter标记就在那里并被划掉。在IE上,它甚至没有出现。我已经从代码生成器在线复制了很多代码,但它仍然无法正常工作!有什么想法吗?

Here's a page有这个问题。我知道链接不起作用,我故意打破它们。

更新:感谢Teemu,我应用了-ms-transform,所以我现在可以使用> = IE9进行偏移。我仍然想支持至少IE8。

1 个答案:

答案 0 :(得分:0)

问题是如果你在测试模式下使用IE9或IE10,用“F12”键改变IE的渲染版本。 IE过滤器标签无法检查您的过滤器是否在IE7中工作,您需要IE7的本机版本,并且与所有其他版本相同。