font-variant-emoji

Characters with both a text and an emoji form (❤, ©, ☺ …) are drawn in whichever the author asks for. text and emoji behave as if U+FE0E / U+FE0F were appended to every such character; unicode follows each character's Emoji_Presentation (❤ is text-default, 👍 is emoji-default); normal leaves it to the font-family order. An explicit U+FE0E / U+FE0F in the text always wins over the property. Each row lists the same four characters — bare, followed by U+FE0E, followed by U+FE0F, and an emoji-default one — in two font stacks that differ only in which of the two fonts (both cover U+2764) comes first; the text form is the outline heart, the emoji form the colour one.

❤❤ + U+FE0E❤ + U+FE0F👍
normal
colour font first
❤❤︎❤️👍
normal
text font first
❤❤︎❤️👍
text
colour font first
❤❤︎❤️👍
text
text font first
❤❤︎❤️👍
emoji
colour font first
❤❤︎❤️👍
emoji
text font first
❤❤︎❤️👍
unicode
colour font first
❤❤︎❤️👍
unicode
text font first
❤❤︎❤️👍