我想写一些优雅的、使用Webdings字形的代码。据推测,Webdings是universally available across platforms字体之一,但是如果由于某种奇怪的原因,Webdings不存在,我不希望浏览器以默认字体显示字符。
有没有办法做到这一点?
发布于 2011-08-22 10:38:58
正如我在评论中所说:
你应该使用@font-face
嵌入一个备用字体,而不是
。这比隐藏文本要好得多,而且它在“所有浏览器”中都有效。
我更喜欢使用Font Squirrel Generator来处理@font-face
。这让它变得非常非常容易。
发布于 2011-08-22 03:22:31
你可以用jQuery做类似这样的事情:
$('p').each(function(){
var s = $(this).css('font-family');
if(s != "verdana"){
$(this).hide();
}
});
示例:http://jsfiddle.net/jasongennaro/GXjvK/
因此,您可以检查元素的字体。如果它不在那里,你就把它藏起来。
发布于 2011-08-22 03:25:25
在JavaScript中没有本机方法来测试字体可用性。
然而,正如lalit所认识到的,因为“每个字符在不同的字体中显示不同,不同的字体对于相同字体大小的相同字符串将采用不同的宽度和高度”。
他写了一篇很好的文章,并创建了一段不错的代码来实现这一点:http://www.lalit.org/lab/javascript-css-font-detect/
https://stackoverflow.com/questions/7142823
复制