0

在 Safari 5.1/Windows XP 中,按钮元素中的 unicode 箭头未显示。<span>工作正常。

<span>▼&lt;/span>
<button>▼&lt;/button>

截图: http ://cl.ly/image/1T0J1X10141A

小提琴:http: //jsfiddle.net/christianhaller/nTvjU/1/

有什么提示可以解决这个问题吗?

更多信息:同一操作系统上的 IE8 的 unicode 字符没有问题

4

1 回答 1

1

这是字体问题。它在 Windows 7 上的 Safari 5.1.7 中不存在,但我能够在虚拟 Windows XP 中的 Safari 5.1.7 中重现它。代替三角形字符,出现一个小矩形,这是缺少字形的常见指示符。

显然,在 Windows XP 上,Safari 使用某些固定字体(似乎是 Microsoft Sans Serif)作为button元素,并且在遇到该字体中不存在的字符时无法查找其他字体。幸运的是,这可以通过指定包含它的字体来解决。如果您button通常更喜欢在 Microsoft Sans Serif 中呈现元素,则在 CSS 中指定备用字体就足够了:

button { font-family: Microsoft Sans Serif, Arial }

相当多的字体包含三角形字符,因此有很多选择。您可能希望将其中一些作为button元素的主要字体,而不仅仅是作为后备字体。

于 2013-02-04T17:31:42.400 回答