На некоторых сайтах некоторые символы Unicode отображаются многоцветными без видимого CSS в Chrome V8 и FF: как это делается?

См., например: http://unicode.org/reports/tr18/#Individually_Named_Characters , где два «чужих» символа Unicode отображаются зеленым цветом (цветами), по крайней мере, в последних версиях Chrome и FireFox.

Тот же раздел страницы полностью черно-белый в MSIE Edge — ничего чужеродного зеленого там нет.

Проверка CSS/страницы не вызывает явных подозрений в ответе на то, как это делается, поэтому, если кто-нибудь может дать подсказку (или две), как это воспроизвести?

Очевидные поиски в гугле выдали зип, нада, пшик, так что либо мой гугловский фу спит в канаве, либо... во всяком случае, не могу найти, как это было сделано моими обычными методами.

Ответы (1)

Рендеринг эмодзи UTF зависит от платформы/поставщика . Здесь нет CSS или других трюков. Различные поставщики (Apple, Google, Microsoft, Mozilla, Samsung и т. д.) просто решили предоставить разные значки для этих символов UTF.

Например, в Chrome на Mac два инопланетных символа, на которые вы ссылались, не отображаются зеленым цветом. Вот как они выглядят:

Обратите внимание, что конкретный механизм рендеринга может иметь приоритет над смайликами хост-ОС и отображать собственный набор значков. Это, скорее всего, то, что вы испытали при использовании MSIE Edge.

Emojipedia дает вам хорошее представление о том, как выглядит каждый эмодзи для каждого поставщика.

Например, во многих системах символ Unicode U+2764 HEAVY BLACK HEART (выделено мной) отображается ярко-красным цветом: ❤️