Chrome unicode 的呈现 "Heavy Plus/Minus/Division Sign"
Chrome Rendering of unicode "Heavy Plus/Minus/Division Sign"
我在 Chrome 的某些版本中尝试渲染 unicode 字符 U+2795 到 U+2797 时遇到了一个奇怪的渲染问题,Heavy Plus/Minus/Division 标志。在某些版本的 Chrome 上,该标志将呈现为带有某种黑色伪轮廓的丑陋灰色,不响应 CSS 颜色命令。这是一张图片:
有关它在我尝试过的所有其他浏览器上的外观示例,请参阅 FileFormat.info - Unicode Character HEAVY PLUS SIGN
对于某些版本,我的意思是,我似乎无法将其缩小到 Chrome 的特定版本。同一个版本的Chrome在两台不同的电脑上运行ning Win10会呈现不同,我也找不到哪里不一样。
这是 Chrome 中的错误吗?我似乎无法找到其他人 运行 对这个问题的看法。我正在尝试将其包含在网站上,但如果 Chrome 的某些版本使其变得丑陋,我需要找到另一个解决方案。
--编辑--
XY问题
我的目的是在背景可以是浅色或深色的可折叠手风琴框中使用 +/- 作为 "expand/collapse" 标记。我希望能够为它们着色以匹配文本的其余部分,而无需求助于图像,但根据下面的评论,我开始认为将 .svg 放在一起可能更容易,重新着色 CSS,并完成它。
问题是浏览器正在用表情符号替换字形,每个浏览器的呈现方式都不同。无法使用 CSS 为表情符号着色——您能做的最好的办法是为它们画轮廓并为剪影着色,如 中所述。不幸的是,这仍然意味着字形在不同的浏览器上显示不同,因为表情符号不会使用您指定的字体呈现。
目前没有办法强制浏览器呈现字形而不是表情符号。附加 \FE0E(如 How to prevent Unicode characters from rendering as emoji in HTML from JavaScript? 中所述)有时会起作用,但这不一致,不能保证,因此不推荐。
您可以提供包含所需字形的网络字体,但这也不能保证有效,因为某些浏览器(尤其是移动设备上的浏览器)仍会将它们替换为表情符号。
如果您需要一致的呈现,最好的方法似乎是使用图像而不是试图强制浏览器不使用表情符号。
我在 Chrome 的某些版本中尝试渲染 unicode 字符 U+2795 到 U+2797 时遇到了一个奇怪的渲染问题,Heavy Plus/Minus/Division 标志。在某些版本的 Chrome 上,该标志将呈现为带有某种黑色伪轮廓的丑陋灰色,不响应 CSS 颜色命令。这是一张图片:
有关它在我尝试过的所有其他浏览器上的外观示例,请参阅 FileFormat.info - Unicode Character HEAVY PLUS SIGN
对于某些版本,我的意思是,我似乎无法将其缩小到 Chrome 的特定版本。同一个版本的Chrome在两台不同的电脑上运行ning Win10会呈现不同,我也找不到哪里不一样。
这是 Chrome 中的错误吗?我似乎无法找到其他人 运行 对这个问题的看法。我正在尝试将其包含在网站上,但如果 Chrome 的某些版本使其变得丑陋,我需要找到另一个解决方案。
--编辑--
XY问题
我的目的是在背景可以是浅色或深色的可折叠手风琴框中使用 +/- 作为 "expand/collapse" 标记。我希望能够为它们着色以匹配文本的其余部分,而无需求助于图像,但根据下面的评论,我开始认为将 .svg 放在一起可能更容易,重新着色 CSS,并完成它。
问题是浏览器正在用表情符号替换字形,每个浏览器的呈现方式都不同。无法使用 CSS 为表情符号着色——您能做的最好的办法是为它们画轮廓并为剪影着色,如
目前没有办法强制浏览器呈现字形而不是表情符号。附加 \FE0E(如 How to prevent Unicode characters from rendering as emoji in HTML from JavaScript? 中所述)有时会起作用,但这不一致,不能保证,因此不推荐。
您可以提供包含所需字形的网络字体,但这也不能保证有效,因为某些浏览器(尤其是移动设备上的浏览器)仍会将它们替换为表情符号。
如果您需要一致的呈现,最好的方法似乎是使用图像而不是试图强制浏览器不使用表情符号。