小编典典

如何使用 CSS 跨浏览器绘制垂直文本?

all

我想通过跨浏览器(>= IE6、>= Firefox 2、任何版本的 Chrome、Safari 或 Opera)支持将单个文本单词旋转 90
度。如何才能做到这一点?


阅读 68

收藏
2022-05-27

共1个答案

小编典典

使用最新信息(来自CSS Tricks)更新了此答案。感谢 Matt 和 Douglas 指出了过滤器的实现。

.rotate {
  -webkit-transform: rotate(-90deg);
  -moz-transform: rotate(-90deg);
  -ms-transform: rotate(-90deg);
  -o-transform: rotate(-90deg);
  transform: rotate(-90deg);

  /* also accepts left, right, top, bottom coordinates; not required, but a good idea for styling */
  -webkit-transform-origin: 50% 50%;
  -moz-transform-origin: 50% 50%;
  -ms-transform-origin: 50% 50%;
  -o-transform-origin: 50% 50%;
  transform-origin: 50% 50%;

  /* Should be unset in IE9+ I think. */
  filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=3);
}

老答案:

对于 FF 3.5 或 Safari/Webkit 3.1,请查看:-moz-
transform
(和 -webkit-
transform)。IE 有一个矩阵过滤器(v5.5+),但我不确定如何使用它。Opera 还没有转换功能。

.rot-neg-90 {
  /* rotate -90 deg, not sure if a negative number is supported so I used 270 */
  -moz-transform: rotate(270deg);
  -moz-transform-origin: 50% 50%;
  -webkit-transform: rotate(270deg);
  -webkit-transform-origin: 50% 50%;
  /* IE support too convoluted for the time I've got on my hands... */
}
2022-05-27