IE8支持HTML自定义字符实体代码“▶”(块右箭头)

时间:2013-06-15 01:58:05

标签: jquery html internet-explorer internet-explorer-8 xhtml

我在按钮中使用HTML字符代码来阻止右箭头。

代码非常简单:

<a href="#" class="button aqua">Details &#x25B6;</a>

块箭头如下所示:▶

字体是Arial:font: 11pt Arial, Helvetica, sans-serif;

我的编码是UTF-8:<meta http-equiv="Content-Type" content="text/html;charset=UTF-8" />我正在使用XHTML 1.0 Transitional doctype。

在IE 8中,我只看到一个小边框,表示找不到任何字符。箭已经失踪了。知道如何让IE8识别这个,或者选择合适的字体/字符集吗?

作为替代方案,我打算用jQuery替换&rqauo;(直角引用:»,IE8支持)的字符。但是,我正在使用v1.9,它取消了$.browser而支持$.support.x。有没有办法检测正在渲染的字体/字符集?

提前感谢您的建议。

2 个答案:

答案 0 :(得分:7)

通常,为了最大化显示特殊字符的几率,您应声明已知包含它的font-family字体列表,并包含可在不同系统中使用的字体。请参阅Guide to using special characters in HTML

对于字符“▶”U + 25B6 BLACK RIGHT-POINTING TRIANGLE,Fileformat.info的font support page提到Arial Unicode MS和Lucida Sans Unicode,以及一些通常不安装在Windows系统上的字体。 Arial Unicode MS随Microsoft Office和其他一些软件一起提供,而自Windows XP以来,Lucida Sans Unicode随Windows一起提供。所以你应该使用例如。

<style>
.triangle { font-family: Lucida Sans Unicode, Arial Unicode MS, sans-serif; }
</style>
[...]
<a href="#" class="button aqua">Details <span class=triangle>&#x25B6;</span></a>

这应该可以解决IE的问题。但是,由于一些奇怪的原因,当我在(虚拟)Windows XP上的IE 6中测试它时,它失败了:角色仍显示为一个框。我不知道为什么,但IE 6中的角色渲染通常是非常错误的。如果您真的想最大化显示符号的几率,请使用图像。

答案 1 :(得分:1)

哇,不敢相信这可能就是这么简单。仍然欢迎其他替代方案,但这似乎适用于IE8。

将首选字体设置为Arial的Unicode版本:Arial Unicode MS

font: 11pt "Arial Unicode MS", Arial, Helvetica, sans-serif;