是否可以使用CSS/CSS3来镜像文本?

具体地说,我有这个剪刀字符“偏左”(✂),我想让它指向左边而不是右边。


当前回答

再举一个角色如何翻转的例子。如果需要,可以添加厂商前缀,但目前所有现代浏览器都支持无前缀转换属性。唯一的例外是启用了Opera Mini模式的Opera(约3%的全球用户)。

<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>Text rotation</title> <style type="text/css" media="screen"> .scissors { display: inline-block; font-size: 50px; color: red; } .original { color: initial; } .flipped { transform: rotateZ(180deg); } .upward { transform: rotateZ(-90deg); } .downward { transform: rotateZ(90deg); } </style> </head> <body> <ul> <li>Original: <span class="scissors original">&#9986;</span></li> <li>Flipped: <span class="scissors flipped">&#9986;</span></li> <li>Upward: <span class="scissors upward">&#9986;</span></li> <li>Downward: <span class="scissors downward">&#9986;</span></li> </ul> </body> </html>

其他回答

再举一个角色如何翻转的例子。如果需要,可以添加厂商前缀,但目前所有现代浏览器都支持无前缀转换属性。唯一的例外是启用了Opera Mini模式的Opera(约3%的全球用户)。

<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>Text rotation</title> <style type="text/css" media="screen"> .scissors { display: inline-block; font-size: 50px; color: red; } .original { color: initial; } .flipped { transform: rotateZ(180deg); } .upward { transform: rotateZ(-90deg); } .downward { transform: rotateZ(90deg); } </style> </head> <body> <ul> <li>Original: <span class="scissors original">&#9986;</span></li> <li>Flipped: <span class="scissors flipped">&#9986;</span></li> <li>Upward: <span class="scissors upward">&#9986;</span></li> <li>Downward: <span class="scissors downward">&#9986;</span></li> </ul> </body> </html>

这适用于's7 stroke icons'和'font-awesome'这样的字体图标:

.mirror {
  display: inline-block;
  transform: scaleX(-1);
}

然后在目标元素上:

<button>
  <span class="s7-back mirror"></span>
  <span>Next</span>
</button>

你可以使用

.your-class{ 
      position:absolute; 
      -moz-transform: scaleX(-1); 
      -o-transform: scaleX(-1); 
      -webkit-transform: scaleX(-1); 
      transform: scaleX(-1); 
      filter: FlipH;  
}

or

 .your-class{ 
  position:absolute;
  transform: rotate(360deg) scaleX(-1);
}

注意,将位置设置为绝对是非常重要的!如果你不设置它,你需要设置display: inline-block;

我们可以使用非常少的代码,使用css关键帧和它的alternate属性(尝试删除alternate来查看区别)制作非常酷的文本效果:

跨度{ 粗细:1000;字体大小:3.3 em; } 小{ 显示:inline-block; 字体大小:2.3 em; 动画:1s无限交替冷却旋转 } @keyframes coolrotate { 从{ 变换:scale(1,1) translate(-0.1em, 0) } , { 变换:scale(- 1,1) translate(0,0) } } < span > < span > c > < /跨度 小> < o < /小> < span > o < / span > <小> L > < /小 < >小…小> < / < / span >

你可以使用“transform”来实现这一点。 http://jsfiddle.net/aRcQ8/

css:

-moz-transform: rotate(-180deg);
-webkit-transform: rotate(-180deg);
transform: rotate(-180deg);