在IE9以下,Internet Explorer几乎没有内置支持CSS3或任何其他标准的Web技术,比如SVG,这些技术可以让您跨平台旋转文本。自从IE6以来,Microsoft已经包含了两种旋转元素(例如文本)的方式,但是更简单的方法只能按照90度的增量旋转,例如:
-ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=3)"; /* 0=0, 1=90, 2=180, 3=270 */
如果你真的需要实现你示例中提到的340 / -20度旋转,那么你需要尝试一些更困难的东西,可以在此处找到文档:
MSDN Matrix Filter。考虑到这看起来过于复杂,一个快速的谷歌搜索揭示了一个很好的计算器,可以为你生成一个
-ms-filter
CSS规则:
Matrix Calculator。
请记住,这两个特性都将在IE9中被废弃,据我所知,IE9支持
-ms-transform
。根据Microsoft如何定义“废弃”(是移除还是建议停止使用),你可能需要检查IE9是否会使你的文本旋转两次。
.footer #descr span {
-ms-filter: "progid:DXImageTransform.Microsoft.Matrix(M11=0.93969262, M12=0.34202014, M21=-0.34202014, M22=0.93969262,sizingMethod='auto expand')";
-ms-transform: rotate(-20deg);
-moz-transform: rotate(-20deg);
-o-transform: rotate(-20deg);
-webkit-transform: rotate(-20deg);
transform: rotate(-20deg);
font-size:40px;
display:block;
float: left;
margin: 0 10px 0 0;
}
说实话,如果你想要使用HTML5和/或CSS3,那么我同意Duopixel的回答,通过JavaScript引入CSS3库是明智的选择。考虑到Windows XP用户无法升级到IE8以后的版本,因此为了支持任何商业网站,这都是一个好主意。