Gives all emoji characters slight bright outline and inverts some simple ones.
Fix Emoji Contrast in Dark TW, FB & TG by myfonj
Details
Authormyfonj
LicenseCC0
Categorytwitter, dark, contrast, emoji
Created
Updated
Size7.4 kB
Statistics
Learn how we calculate statistics in the FAQ.
Failed to fetch stats.
Description
Notes
Screenshot taken from this tweet.
Source code
/* ==UserStyle==
@name Fix Emoji contrast in dark themes for Twitter, Facebook and Telegram
@namespace github.com/openstyles/stylus
@version 3.0.3
@description Gives all emoji characters slight bright outline and inverts some simple black ones.
@author myfonj
@license CC0
==/UserStyle== */
/*
Changelog
3.0.3 (2024-05-17) x.com "Terror from the deep"
3.0.2 (2024-05-15) added missing โข for telegram
https://userstyles.world/style/5327/fix-emoji-contrast-in-dark-tw-fb-tg
https://twitter.com/myfonj/status/1540416707612786690
*/
@-moz-document domain('www.facebook.com'){
/*
Facebook: glow for all Emoji images
*/
img[src*="fbcdn.net/images/emoji.php/"][src$=".png"] {
filter: drop-shadow(0px 0px .5px #fff) !important;
}
/*
these are problematic at FB:
๐ฃ๐โโ๏ธ๐๐โโ๏ธ๐ฉโ๐๐งโ๐๐จโ๐๐ฅท๐ฉ๐๐ชฒ๐โโฌ๐๐๐ต๐ฑ๐คฟ๐ผโ๐ฟ๐ฅ๐ผ๐ฃ๐ณ๐ช๐ค๐ต๐ถโซ๏ธโช๏ธโพ๏ธ๐ฒโผ๏ธโฌ๏ธโ ๏ธโฃ๏ธ๐ด
*/
}
@-moz-document domain("twitter.com"), domain("x.com") {
/*
Twitter with "Dark" or "Dim" colour sheme acive
*/
body:is(
[style*="background-color: #15202B" i], /* ocassionally served to Edge/Chrome or something? */
[style*="background-color: rgb(21, 32, 43)" i],
[style*="background-color: #000" i], /* not seen, for hypothetical 000000 and 000000FF and 000F */
[style*="background-color: rgb(0, 0, 0)" i]
)
/*
Any Emoji image
*/
img[src*=".twimg.com/emoji/v2/svg/"] {
/*
- default: give all emojis slight "glow"
*/
filter: drop-shadow(0px 0px .5px #fff);
opacity: 1 !important;
/*
- hover: no glow but bright background
*/
&:not(#\0):hover {
filter: none !important;
background-color: #fff !important;
}
/*
- Invert Emojis that are plain black or near-black where presenting them as bright would not change the meaning
*/
&:is(
[src$="/a9.svg"] /* ยฉ๏ธ Copyright */
,[src$="/ae.svg"] /* ยฎ๏ธ Registered */
,[src$="/2122.svg"] /* โข Trade Mark */
,[src$="/2714.svg"] /* โ๏ธ Check Mark */
,[src$="/2716.svg"] /* โ๏ธ Multiply */
,[src$="/2734.svg"] /* โด๏ธ Eight-Pointed Star */
,[src$="/2795.svg"] /* โ Plus */
,[src$="/2796.svg"] /* โ Minus */
,[src$="/2797.svg"] /* โ Divide */
,[src$="/27b0.svg"] /* โฐ Curly Loop */
,[src$="/3030.svg"] /* ใฐ๏ธ Wavy Dash */
,[src$="/1f41c.svg"] /* ๐ Ant */
,[src$="/1f4b1.svg"] /* ๐ฑ Currency Exchange */
,[src$="/1f4b2.svg"] /* ๐ฒ Heavy Dollar Sign */
,[src$="/1f4de.svg"] /* ๐ Telephone Receiver */
,[src$="/1f4fd.svg"] /* ๐ฝ๏ธ Film Projector */
,[src$="/1f50c.svg"] /* ๐ Electric Plug */
,[src$="/1f519.svg"] /* ๐ Back Arrow */
,[src$="/1f51a.svg"] /* ๐ End Arrow */
,[src$="/1f51b.svg"] /* ๐ On! Arrow */
,[src$="/1f51c.svg"] /* ๐ Soon Arrow */
,[src$="/1f51d.svg"] /* ๐ Top Arrow */
,[src$="/1f577.svg"] /* ๐ท๏ธ Spider */
,[src$="/1f7f0.svg"] /* ๐ฐ Heavy Equals Sign */
) {
filter: invert(1) !important;
}
}
/*
Other problematic dark emojis:
๐ณ๏ธ Hole
๐ฃ Bomb
๐๏ธโ๐จ๏ธ Eye in Speech Bubble
โฐ๏ธ Mountain
๐ฆจ Skunk
๐ Water Buffalo
๐โโฌ Black Cat
๐ค Black Heart
๐ชฐ Fly
๐ณ Cooking
๐ฅ Shallow Pan of Food
โ ๏ธ Spade Suit
โฃ๏ธ Club Suit
๐ฑ Pool 8 Ball
โ๏ธ Chess Pawn
๐ Graduation Cap
๐ฉ Top Hat
๐ถ๏ธ Sunglasses
โฌ Black Large Square
โผ๏ธ Black Medium Square
โพ Black Medium-Small Square
โช๏ธ Black Small Square
๐ด Black Flag๐ดโ
โ ๏ธ Pirate Flag
*/
/* testing batch:
ยฉ๏ธยฎ๏ธโขโ๏ธโ๏ธโด๏ธโโโโฐใฐ๏ธ๐๐ฑ๐ฒ๐๐ฝ๏ธ๐๐๐๐๐๐๐ท๏ธ๐ฐ
๐ณ๏ธ๐ฃ๐๏ธโ๐จ๏ธโฐ๏ธ๐ฆจ๐๐โโฌ๐ค๐ชฐ๐ณ๐ฅโ ๏ธโฃ๏ธ๐ฑโ๏ธ๐๐ฉ๐ถ๏ธโฌโผ๏ธโพโช๏ธ๐ด๐ดโโ ๏ธ
*/
}
@-moz-document domain("web.telegram.org") {
/*
Telegram: glow for dark, invert for black Emoji, rest unchanged
*/
/* ๐ณ๐ฃ๐โ๐จ๐จ๐ฃ๐โ๐ฆบ๐๐โโฌ๐พ๐ฆจ๐ฆก๐ง๐ฆ
๐๐ธ๐ท๐โ โฃโ๐ถ๐๐ผ๐ต๐ถ๐ฉ๐๐ผโ๐๐๐๐๐๐๐๐โโโโ๐ฐใฐ๐ฑ๐ฒโโฟโฐยฉ๐ดโซโชโพโผโฌ */
img.emoji[src="assets/img/emoji/1f573.png"], /*๐ณ */
img.emoji[src="assets/img/emoji/1f4a3.png"], /*๐ฃ */
img.emoji[src="assets/img/emoji/1f441-200d-1f5e8.png"], /*๐โ๐จ */
img.emoji[src="assets/img/emoji/1f5e8.png"], /*๐จ */
img.emoji[src="assets/img/emoji/1f463.png"], /*๐ฃ */
img.emoji[src="assets/img/emoji/1f415-200d-1f9ba.png"], /*๐โ๐ฆบ */
img.emoji[src="assets/img/emoji/1f403.png"], /*๐ */
img.emoji[src="assets/img/emoji/1f408-200d-2b1b.png"], /*๐โโฌ */
img.emoji[src="assets/img/emoji/1f43e.png"], /*๐พ */
img.emoji[src="assets/img/emoji/1f9a8.png"], /*๐ฆจ */
img.emoji[src="assets/img/emoji/1f9a1.png"], /*๐ฆก */
img.emoji[src="assets/img/emoji/1f427.png"], /*๐ง */
img.emoji[src="assets/img/emoji/1f985.png"], /*๐ฆ
*/
img.emoji[src="assets/img/emoji/1f41c.png"], /*๐ */
img.emoji[src="assets/img/emoji/1f578.png"], /*๐ธ */
img.emoji[src="assets/img/emoji/1f577.png"], /*๐ท */
img.emoji[src="assets/img/emoji/1f311.png"], /*๐ */
img.emoji[src="assets/img/emoji/2660.png"], /*โ */
img.emoji[src="assets/img/emoji/2663.png"], /*โฃ */
img.emoji[src="assets/img/emoji/265f.png"], /*โ */
img.emoji[src="assets/img/emoji/1f576.png"], /*๐ถ */
img.emoji[src="assets/img/emoji/1f393.png"], /*๐ */
img.emoji[src="assets/img/emoji/1f3a9.png"], /*๐ฉ */
img.emoji[src="assets/img/emoji/1f4de.png"], /*๐ */
img.emoji[src="assets/img/emoji/1f4fc.png"], /*๐ผ */
img.emoji[src="assets/img/emoji/2712.png"], /*โ */
img.emoji[src="assets/img/emoji/1f58b.png"], /*๐ */
img.emoji[src="assets/img/emoji/1f58a.png"], /*๐ */
img.emoji[src="assets/img/emoji/1f5dd.png"], /*๐ */
img.emoji[src="assets/img/emoji/1f3f4.png"], /*๐ด */
img.emoji[src="assets/img/emoji/26ab.png"], /*โซ */
img.emoji[src="assets/img/emoji/25aa.png"], /*โช */
img.emoji[src="assets/img/emoji/25fe.png"], /*โพ */
img.emoji[src="assets/img/emoji/25fc.png"], /*โผ */
img.emoji[src="assets/img/emoji/2b1b.png"], /*โฌ */
img.emoji[src="assets/img/emoji/xxxx.png"] {
filter: drop-shadow(0px 0px .5px #fff);
}
img.emoji[src="assets/img/emoji/1f3bc.png"], /*๐ผ */
img.emoji[src="assets/img/emoji/1f3b5.png"], /*๐ต */
img.emoji[src="assets/img/emoji/1f3b6.png"], /*๐ถ */
img.emoji[src="assets/img/emoji/1f519.png"], /*๐ */
img.emoji[src="assets/img/emoji/1f51a.png"], /*๐ */
img.emoji[src="assets/img/emoji/1f51b.png"], /*๐ */
img.emoji[src="assets/img/emoji/1f51c.png"], /*๐ */
img.emoji[src="assets/img/emoji/1f51d.png"], /*๐ */
img.emoji[src="assets/img/emoji/2716.png"], /*โ */
img.emoji[src="assets/img/emoji/2795.png"], /*โ */
img.emoji[src="assets/img/emoji/2796.png"], /*โ */
img.emoji[src="assets/img/emoji/2797.png"], /*โ */
img.emoji[src="assets/img/emoji/1f7f0.png"], /*๐ฐ */
img.emoji[src="assets/img/emoji/3030.png"], /*ใฐ */
img.emoji[src="assets/img/emoji/1f4b1.png"], /*๐ฑ */
img.emoji[src="assets/img/emoji/1f4b2.png"], /*๐ฒ */
img.emoji[src="assets/img/emoji/2714.png"], /*โ */
img.emoji[src="assets/img/emoji/27bf.png"], /*โฟ */
img.emoji[src="assets/img/emoji/27b0.png"], /*โฐ */
img.emoji[src="assets/img/emoji/00a9.png"], /*ยฉ */
img.emoji[src="assets/img/emoji/2122.png"], /*โข */
img.emoji[src="assets/img/emoji/yyyy.png"] {
filter: invert(1) !important;
}
}