我正在HTML文档中使用Unicode“复选标记”(U+2713)。我发现它在大多数浏览器中呈现正常,但有时我会在他们的电脑上遇到缺少字体的人。如果缺少字体,有没有HTML/JS技巧来指定其他显示字符(或图像)?

最佳答案

没有直接的方法来判断是否有任何特定的字符以有用的方式呈现。对于javascript,您所能做的就是创建一个包含目标字体中一个(或多个)目标字符的<span>并将其宽度与另一个包含相同数量的字符的<span>进行比较,您知道这些字符不会有效地呈现(*)。如果它们的宽度相同,那么很可能每个框中都有一堆框或问号,因此可以采取备份措施,如添加图像。
因为这是一个相当多的烦恼,你可能更喜欢只是为了形象。或者,您可以尝试在现代浏览器中嵌入@font-face以使用已知良好的字体。由于通常是IE的unicode字体回退支持较差,请确保包含一个eot字体。
(*:您可以尝试一个当前未分配的字符,并希望保持这种状态,例如U+08FF,或者一个保证无效的字符(如U+FFFF),尽管是否应该允许您将其放入HTML文档中还是有疑问的。)

关于html - 降低具有缺少字体的Web浏览器的Unicode字符,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3632091/

10-12 12:26
查看更多