CSS技巧:如何使用其他方式来实现文字抗锯齿效果
大多数人知道text-shadow可以实现文字阴影效果,也有很多人知道可以通过使用`-webkit-font-smoothing: antialiased;`和`-moz-osx-font-smoothing: grayscale;`来实现文字抗锯齿的效果,但是后者只支持MacOS,那么在Windows下应该怎么做文字抗锯齿效果呢?
(可能有些人会称这个技巧为CSS Hack)
将以下代码放在需要优化的地方(如body):
text-shadow: 0 0 0.01px rgba(0,0,0,0.2);/*1*/
text-shadow: 0 0 0.01px rgba(0,0,0,0.2), 0 0 0.01px rgba(255,255,255,0.02);/*2*/
(任选其一)
可见文字变得“平滑”了一点点,改变alpha值可增强平滑效果,超过0.5就会变模糊了。
若文字颜色不是黑色的话,使用以下代码:
text-shadow:0 0 0.01px currentColor;
还有一种方法(https://stackoverflow.com/a/4549512):
-webkit-text-stroke: 0.03px rgba(255,255,255,0.5);
也能做到类似抗锯齿的效果,只不过这次是从字形下手,且效果不是很好
总结:使用以上代码确实能让文字看起来更加平滑,但这也是一把双刃剑:
优点:在大字号下(标题字号)看起来很棒
缺点:在小字号下(正文字号)看起来更模糊