gpt4 book ai didi

unicode - 所有浏览器都支持 Unicode 字体有什么标准吗?

转载 作者:行者123 更新时间:2023-12-02 00:22:07 24 4
gpt4 key购买 nike

是否有一个标准来管理所有浏览器对 Unicode 字体的支持?

最新版本的 Unicode 包含超过 110,000 个字符,涵盖 100 个脚本。我不期望浏览器支持所有这些字符,但应该对某些字符有最低限度的支持,例如拉丁字母、常见标点符号以及数学、货币等类型的符号。

我目前在 Android 浏览器上显示 U+060B AFGANI SIGN (Ë) 和 U+202F NARROW NON-BREAK SPACE 时遇到问题。我想知道是否有一个普遍认可的Unicode字符列表,以便开发者可以放心地使用它们,而不必担心浏览器显示问题。

最佳答案

浏览器中没有关于 Unicode 支持的标准。此外,显示字符的能力主要取决于字体,尽管浏览器扫描字体的能力有所不同。通常您可以做的是指定一个合适的 font-family 字体列表,每个字体都支持您需要的所有字符。有关这方面的一般性信息,请参阅我的 Guide to using special characters in HTML .

在 Android 上,问题在于字体集非常有限。如果您需要超出其支持范围的任何字符,则需要通过 @font-face 使用可下载字体。

货币符号“Ë”U+060B AFGHANI SIGN 存在于大约十几种字体中,但其中唯一的免费字体(如果我们不计算位图字体 GNU Unifont)似乎是 Scheherazade .

对于 U+202F 窄无间断空间,font support更宽。但一般来说,使用其他方法往往比使用此类字符更好。许多字体包含的该字符几乎与普通空格一样宽,并且 Unicode 标准中对其宽度的描述很模糊:“不间断空格的窄形式,通常是薄空格或中空格的宽度空间”。在 Unicode 标准中,“薄空间”被描述为“五分之一 em(有时是六分之一)”,而实际上它的宽度是变化的。而“中间空间”确实是一个未定义的概念。

例如,如果文本使用空格作为千​​位分隔符的语言,原则上您可以将 100 000 这样的数字写为 100 000,但最好这样写:说,

<span class="gr">100&nbsp;000</span>

使用 CSS 代码,如 .gr { word-spacing: -0.15em }

关于unicode - 所有浏览器都支持 Unicode 字体有什么标准吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13892123/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com