提问人:Patrick Moore 提问时间:6/15/2013 更新时间:6/15/2013 访问量:3429
IE8 支持 HTML 自定义字符实体代码 “▶”(阻止右箭头)
IE8 support for HTML custom character entity code "▶" (block right arrow)
问:
我正在使用 HTML 字符代码来阻止按钮中的右箭头。
代码非常简单:
<a href="#" class="button aqua">Details ▶</a>
块箭头如下所示: ▶
字体是Arial:font: 11pt Arial, Helvetica, sans-serif;
我的编码是 UTF-8:我正在使用 XHTML 1.0 过渡文档类型。<meta http-equiv="Content-Type" content="text/html;charset=UTF-8" />
在 IE 8 中,我只看到一个小边框,表示未找到字符。箭头不见了。知道如何使IE8识别这一点,或选择合适的字体/字符集吗?
作为替代方案,我打算做的是使用 jQuery 将字符替换为(直角引号:»,IE8 支持)。但是,我使用的是 v1.9,它取消了 .有什么方法可以检测正在呈现的字体/字符集吗?&rqauo;
$.browser
$.support.x
提前感谢您的建议。
答:
哇,简直不敢相信事情竟然这么简单。仍然欢迎其他替代方案,但这似乎适用于 IE8。
将首选字体设置为 Arial 的 Unicode 版本:Arial Unicode MS
font: 11pt "Arial Unicode MS", Arial, Helvetica, sans-serif;
评论
通常,为了最大限度地提高显示特殊字符的几率,您应该声明一个已知包含该字符的字体列表,并包含不同系统中可用的字体。请参阅在 HTML 中使用特殊字符的指南。font-family
对于字符 “▶” U+25B6 BLACK RIGHT-POINTING TRIANGLE,Fileformat.info 处的字体支持页面提到了 Arial Unicode MS 和 Lucida Sans Unicode,以及一些通常不安装在 Windows 系统上的字体。Arial Unicode MS随Microsoft Office和其他一些软件一起提供,而Lucida Sans Unicode自Windows XP以来随Windows一起提供。因此,您应该使用
<style>
.triangle { font-family: Lucida Sans Unicode, Arial Unicode MS, sans-serif; }
</style>
[...]
<a href="#" class="button aqua">Details <span class=triangle>▶</span></a>
这应该可以解决IE的问题。然而,由于某种奇怪的原因,当我在(虚拟)Windows XP 上的 IE 6 中测试它时,它失败了:字符仍然显示为一个框。我说不出为什么,但 IE 6 中的字符渲染通常非常有问题。如果确实想最大限度地提高显示符号的几率,请使用图像。
评论
.el:before {content: "\25b6";}
font-family: "Lucida Sans Unicode", "Arial Unicode MS", sans-serif;
评论