CSS3转换:旋转; 在IE9中

我有一个元素需要在我所做的devise中是垂直的。 我已经得到了这个CSS的工作在除IE9以外的所有浏览器。 我用IE7和IE8的filter:

progid:DXImageTransform.Microsoft.BasicImage(rotation=3); 

这似乎使我的元素透明的IE9和CSS3“变形”性能似乎并没有做任何事情!

有没有人知道IE9中的旋转元素?

真的很感谢帮助!

W.

标准的CSS3旋转应该在IE9中工作,但我相信你需要给它一个供应商的前缀,如下所示:

  -ms-transform: rotate(10deg); 

它可能在testing版本中不起作用; 如果没有,请尝试下载当前的预览版本(预览版本7),这是testing版本的更新版本。 我没有用于testing的testing版本,所以我无法确认它是否在该版本中。 最终发布版本肯定会支持它。

我也可以确认在IE9中IE特定的filter属性已被删除。

[编辑]
人们已经要求进一步的文件。 正如他们所说,这是相当有限的,但我确实find了这个页面: http : //css3please.com/这对于testing所有浏览器中的各种CSS3function是非常有用的。

但是在IE9预览中testing这个页面上的旋转function导致它崩溃得相当壮观。

不过,我已经做了一些独立的testing使用-ms-transform:rotate()在IE9中我自己的testing页,它工作正常。 所以我的结论是这个特性被实现了,但是有一些bug,可能与dynamic设置有关。

另一个有用的参考点,在哪些浏览器是www.canIuse.com实现function – 请参阅http://caniuse.com/#search=rotation

[编辑]
重振这个旧的答案,因为我最近发现了一个叫做CSS Sandpaper的黑客,它和这个问题有关,可能会让事情变得更简单。

hack实现了对旧版IE的标准CSS transform支持。 所以,现在你可以添加以下到您的CSS:

 -sand-transform: rotate(10deg); 

…并在IE 6/7/8中工作,而不必使用filter语法。 (当然,它仍然使用幕后的filter语法,但是这使得它更容易pipe理,因为它使用与其他浏览器类似的语法)

尝试这个

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Untitled Document</title> <style type="text/css"> body { margin-left: 50px; margin-top: 50px; margin-right: 50px; margin-bottom: 50px; } .rotate { font-family: Arial, Helvetica, sans-serif; font-size: 16px; -webkit-transform: rotate(-10deg); -moz-transform: rotate(-10deg); -o-transform: rotate(-10deg); -ms-transform: rotate(-10deg); -sand-transform: rotate(10deg); display: block; position: fixed; } </style> </head> <body> <div class="rotate">Alpesh</div> </body> </html> 

我也有在IE9转换的问题,我使用了-ms-transform: rotate(10deg) ,它不工作。 尽我所能,但问题是在浏览器模式,要使转换工作,您需要设置兼容模式为“标准IE9”。

我知道这是旧的,但我有同样的问题,发现这篇文章,虽然没有解释到底是什么错,它帮助我正确的答案 – 所以希望我的回答可能有助于其他人可能有一个类似的问题,我的。

我有一个我想要旋转垂直的元素,所以我自然添加了filter:对于IE8,然后对IE9的-ms-transform属性。 我发现,具有-ms-transform属性,并将filter应用于相同的元素会导致IE9非常糟糕地呈现该元素。 我的解决scheme

  1. 如果你正在使用transform-origin属性,为MS添加一个(-ms-transform-origin:left bottom;)。 如果你没有看到你的元素,它可能是它的中间轴旋转,从而离开了网页 – 所以仔细检查。

  2. 将IE7&8的filter:属性移动到单独的样式表中,并使用IE条件为小于IE9的浏览器插入样式表。 这样,它不会影响IE9样式,所有应该工作正常。

  3. 确保使用正确的DOCTYPE标签; 如果你有错误的IE9将无法正常工作。