首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Web浏览器引擎和特殊字符渲染

Web浏览器引擎和特殊字符渲染
EN

Stack Overflow用户
提问于 2011-11-20 21:28:12
回答 1查看 3.5K关注 0票数 4

我对此感到非常惊讶。Chrome、Safari、Opera和Firefox都有自己版本的HTML字符实体。我只是不明白符号的渲染是由浏览器内部定义的。因此,在我的浏览器应用程序代码中,有为雪人渲染HTML实体的规范:

或者比较一下Chrome浏览器、Safari浏览器和火狐浏览器的回收标志和双正方形标志之间的巨大差异:在Opera中,http://marckremers.com/SO/test.html甚至不显示双正方形。

我对浏览器公司的短板感到非常困惑和失望。在这里,他们有一个令人惊叹的机会,为web开发人员和设计师提供了一套标准化的符号,用于各种形式的UI。但事实并非如此,它们都有自己的怪异版本,这意味着我们不能依赖它们来进行一致的网页设计。

我的问题是:有没有一种方法可以一致地显示这些符号?有正式的雪人吗?(举个例子,它可以是数百个可用的符号中的任何一个)

最后,请转到此处调查渲染效果的巨大差异(浏览浏览器查看)

http://copypastecharacter.com/

编辑进一步看,它显然与Webkit、Gecko和Presto (Opera)渲染引擎有关,不一定是不同的浏览器。Safari和Chrome渲染完全相同的雪人。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-11-20 22:04:45

答案是..。雪人的十进制表示是在http://copypastecharacter.com/中指定的9731

代码语言:javascript
复制
<span data-decimal="9731" data-entity="&amp;#9731;" data-id="45739" title="Snowman">☃</span>

它的十六进制表示是0x2603。在unicode.org/charts上查找这个字符会告诉我们应该研究this document

Fonts部分声明:

这些代码表中使用的参考字形的形状不是prescriptive.形式的在实际的字体中,预计会有相当大的变化。这些图表中使用的特定字体是由许多不同的字体设计师提供给Unicode Consortium的,他们拥有这些字体的权利。

结论

字形不是标准化的,你不能依赖它的图形表示。这可能取决于字体以及您用来显示符号的应用程序(应用程序或浏览器可能使用内部非操作系统字体)。顺便说一下:在我的机器(Ubuntu 11.04)上,这些符号在Firefox (7.0.1)和Chrome (15)中看起来完全一样。

标准让我们满意的是两个不同的雪人-有和没有雪花作为背景:

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8201804

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档