Google chrome 解释为什么Chrome对Arial表情的解释不同于其他字体——它添加了一个性别符号

Google chrome 解释为什么Chrome对Arial表情的解释不同于其他字体——它添加了一个性别符号,google-chrome,emoji,font-family,Google Chrome,Emoji,Font Family,有人能解释一下为什么有些表情符号在使用Chrome和Arial字体时会添加性别符号吗? chrome版本:63.0.3239.132 这是html <!DOCTYPE html> <html> <style> .emoji { font-family: Times; } </style> <body> <p style="font-family: Arial">Arial Facepalm with symbol

有人能解释一下为什么有些表情符号在使用Chrome和Arial字体时会添加性别符号吗?

chrome版本:63.0.3239.132

这是html

<!DOCTYPE html>
<html>
<style> 
.emoji {
  font-family: Times;
}
</style>
<body>

<p style="font-family: Arial">Arial Facepalm with symbol I assume you selected the emoji from an Apple device interface, because the gender symbol is inherent in the string that gets pasted. It's actually four Unicode characters:

  • A generic facepalm character: U+1F926
    &#x1F926;
  • A zero width joiner: U+200D
    &#x200D;
    (the glue)
  • A male gender symbol: U+2642
    &#x2642;
    (the default)
  • A variation selector: U+FE0F
    &#xFE0F;
    (seems redundant)
Replace the gender with a female sign and you've got a "woman face palm"

&#x1F926;&zwj;&#x2640;

.表情符号{
字体家族:时代;
}

带符号的Arial Facepalm我假设您是从Apple设备界面选择表情符号的,因为粘贴的字符串中固有性别符号。实际上是四个Unicode字符:

  • 通用脸掌字符:
    🤦
  • 零宽度连接件:
    (胶水)
  • 男性性别符号:
    (默认值)
  • 变体选择器:
    和#xFE0F(似乎多余)
用女性标志代替性别,你就有了“女性掌心”

例如:

但正如你在Chrome中所看到的,显然只有Arial和我测试的Chrome

虽然我可以回答为什么会有符号,但我不能告诉你为什么Chrome不能用这种字体呈现Unicode复合规则。我只能猜测这是Chrome中的一个bug,在某个时候会被修复


如果您需要在Arial中渲染男性面部手掌,您仍然可以。只需单独使用通用基字符:
🤦。如果你需要一个女性表情符号,那么你就被卡住了。

感谢你在使用多个unicode字符创建表情符号的过程中添加了一些上下文。然而,我关于chrome/arial的问题仍然存在。我同意这可能是某种错误。了解Chrome为什么不呈现复合规则会很好。