IE6中以不同大小呈现的Unicode字符

IE6中以不同大小呈现的Unicode字符,unicode,fonts,web,internet-explorer-6,Unicode,Fonts,Web,Internet Explorer 6,在web应用程序中,我必须显示一个特殊的unicode字符,称为黑钻石(U+25C6)(有关更多详细信息,请参阅)。下面是一个示例:◆ 为页面定义的字体为Arial,大小为13px 令人惊讶的是,与其他浏览器(FF、Chrome等)相比,IE6中的角色渲染尺寸更大 这种奇怪的行为有什么原因吗?有什么解决方案可以避免这种情况?这是因为指定的字体缺少指定的字符。因此,浏览器会为该字符寻找合适的字体,以便仍能显示该字符。不同的浏览器选择不同的字体,所以你会在每个浏览器上看到有点不同 一般来说,您无法避

在web应用程序中,我必须显示一个特殊的unicode字符,称为
黑钻石(U+25C6)
(有关更多详细信息,请参阅)。下面是一个示例:

为页面定义的字体为Arial,大小为13px

令人惊讶的是,与其他浏览器(FF、Chrome等)相比,IE6中的角色渲染尺寸更大


这种奇怪的行为有什么原因吗?有什么解决方案可以避免这种情况?

这是因为指定的字体缺少指定的字符。因此,浏览器会为该字符寻找合适的字体,以便仍能显示该字符。不同的浏览器选择不同的字体,所以你会在每个浏览器上看到有点不同

一般来说,您无法避免这种情况,因为缺少字体在web上非常常见,因此您无法真正依赖用户机器上的任何字体。不过,您可以尝试缓解它:

  • 您可以将U+25C6放在一个跨距中,该跨距的样式为使用具有该字符的不同但特定的字体(并且与主字体配合良好)
  • 与上面相同,但分发包含glyph的web字体(现在似乎是一个合理的选择)。这样,您可以更好地控制显示的内容
  • 远离指定像Arial Unicode MS这样的备用字体。只是根本不使用它们
  • 如果你只是看上U+25C6的外观,而不在乎它实际上是文本形式,那么你可以使用图像或图像

  • 你是对的。我原以为黑色钻石是用Arial定义的,但事实并非如此,只定义了黑色钻石套装(看起来几乎一样,我第一次没有花时间阅读角色地图中的角色描述,只看到一颗钻石并认为它就在那里…。哦,的确,使用另一个类似的角色,当然也很有效;)我最终使用了解决方案1。我用黑钻石在页面上显示里程碑,并用黑钻石套装,因为这看起来很难看