您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Make YouTube Chat Tints
当前为
/* ==UserStyle== @name YouTube Chat Tints @version 0.3.6 @namespace github.com/cyfung1031 @license MIT @description Make YouTube Chat Tints @author CY Fung @preprocessor stylus @var color color-sponsor-text "Sponsor Text Color" #71ff8c @var color color-moderator-text "Moderator Text Color" #70a7ff @var color color-owner-chip-background "Owner Chip Background Color" #ffff3c @var color color-general-author "General Author Color" #a3e3e3 @var range loading-effect-ms "loading-effect (0ms=disable; 600ms)" [0, 0, 900, 50, 'ms'] @var checkbox chat-author-vline-enable "Enable Chat Author Vline" 1 @var range vline-gap-1 "Vline Gap 1" [0, -2, 18, 1] @var range vline-gap-2 "Vline Gap 2" [0, -6, 6, 1] @var checkbox fade-author-icon-enable "Enable Fade Author Icon" 1 @var number author-icon-opacity "Author Icon Opacity" [0.6, 0.2, 1.0, 0.2] @var range author-icon-size "Author Icon Size" [24,12,36,2,'px'] @var range author-font-ratio "Author Text Size" [3.6, 2.0, 4.6, 0.2] @var range member-icon-font-size "Member Icon Font Size" [1.4, 0.6, 2.6, 0.2, 'rem'] @var range message-font-ratio "Message Font Size" [4.6, 2.0, 6.6, 0.2] @var checkbox emoji-normalize-enable "Emoji Size Adjust" 0 @var range emoji-font-size "Emoji Font Size" [2.0, 0.6, 3.4, 0.2, 'rem'] @var number emoji-vertical-shift "Emoji Vertical Shift" [14, 1, 32, 1] @var range emoji-margin "Emoji Margin" [2.0, 1.0, 6.0, 1.0, 'px'] @var number emoji-shadow-size "emoji-shadow-size (1=disable)" [3, 1, 4, 1] @var color emoji-shadow "emoji-shadow" #b5b4b4 @var range padding-left-message "Message Padding Left" [0.4, 0.2, 2, 0.2, 'em'] @var range padding-left-author-icon-x "Author Icon Padding Left" [4, 2, 26, 2, 'px'] @var range padding-right-author-icon "Author Icon Padding Right" [6, 2, 32, 2, 'px'] @var number final-message-opacity "Final Message Opacity" [0.8, 0.5, 1.0, 0.1] @var number min-content-text-height "Min Content Text Height (0=disable)" [0, 0, 18, 1] @var range message-opacity-ms "message-opacity-animation (0ms=disable; 250ms)" [0, 0, 600, 50, 'ms'] ==/UserStyle== */ /* @var checkbox ruby-font "Ruby Font" 1 @var checkbox pw-font "Proportional Width Font" 1 */ ruby-font=0 // pw-font=0 // vline-gap-1-px = vline-gap-1 * 1px vline-gap-2-px = vline-gap-2 * 2px padding-right-author-icon-diff = padding-right-author-icon - 6px author-icon-size-diff = author-icon-size - 24px + vline-gap-1-px cb-w = 78px + author-icon-size-diff + vline-gap-1-px // cb-ml = -( 48px + cb-w + author-icon-size-diff + padding-right-author-icon-diff + vline-gap-2-px + vline-gap-1-px ) // padding-left-author-icon = padding-left-author-icon-x + vline-gap-1-px ds-w = 14px + vline-gap-2-px + vline-gap-1-px // if chat-author-vline-enable == 0 // ds-w = 0px // author-icon-mr = padding-right-author-icon + ds-w // final-message-opacity-0 = final-message-opacity * 0.2 // final-message-opacity-10 = final-message-opacity * 0.45 // message-font-size = message-font-ratio * 0.4rem // author-font-size-2=author-font-ratio * 0.4rem // sl-3a = (emoji-vertical-shift - 4) * 0.5px emoji-vertical-shift-px = sl-3a dummy() // dummy border: 0; myChars = (A B C D E F G H I J K L M N O P Q R S T U V W X Y Z a b c d e f g h i j k l m n o p q r s t u v w x y z 0 1 2 3 4 5 6 7 8 9) gen1() for c1, i in myChars d1 = '&:has(#img[src*="/%s"])' % c1 {d1} --author-color-1 'var(--author-color-set-1-%s)' % (i+1) for c1, i in myChars d1 = '&:has(#img[src*="%s="])' % c1 {d1} --author-color-1 'var(--author-color-set-1-%s)' % (i+1) for c1, i in myChars d1 = '&:has(.yt-live-chat-author-badge-renderer[src*="/%s"])' % c1 {d1} --author-color-2 'var(--author-color-set-1-%s)' % (i+1) @-moz-document url-prefix("https://www.youtube.com/live_chat") { line-height-message = message-font-size * 1.2 line-height-author-name = author-font-size-2 * 1.2 line-height-min = 0 if message-font-size >0 and author-font-size-2 > 0 { line-height-min = line-height-message + line-height-author-name } html{ --final-message-opacity-0: final-message-opacity-0; --final-message-opacity-10: final-message-opacity-10; --final-message-opacity: final-message-opacity; --emoji-vertical-shift-px: emoji-vertical-shift-px; --author-chip-display: !invalid; --author-chip-mt: !invalid; --author-chip-mb: !invalid; } yt-live-chat-author-chip { display: var(--author-chip-display); margin-top: var( --author-chip-mt); margin-bottom: var( --author-chip-mb); } makeBoxShadow(){ contain: strict; content-visibility: auto; position: absolute; box-shadow-w1 = 32px + author-icon-size-diff + vline-gap-1-px box-shadow-w2 = box-shadow-w1 + 12px + vline-gap-2-px --box-shadow-w1: box-shadow-w1; --box-shadow-w2: box-shadow-w2; box-shadow: var(--box-shadow-w1) 0px 0px 0px var(--author-color-1), var(--box-shadow-w1) 0px 0px 0px #ddd, var(--box-shadow-w2) 0px 0px 0px var(--author-color-2), var(--box-shadow-w2) 0px 0px 0px #888; content: ''; width: cb-w; border-radius: 0; display: block; pointer-events: none; touch-action: none; user-select: none; z-index: 0; bottom: 1px; top: 1px; } #menu.style-scope.yt-live-chat-paid-message-renderer { z-index: 77; pointer-events: all; } /* */ @keyframes yt-live-chat-text-message-renderer-animation3 { 0% { opacity: var(--final-message-opacity-0); /* */ } 100% { opacity: var(--final-message-opacity); /* */ } } /* */ @keyframes yt-live-chat-text-message-renderer-animation2 { 0% { left: 48px; height: 6px; width: 32px; opacity: 0.9; } 50% { left: 48px; height: 3.2px; width: calc(100% - 72px); opacity: 0.8; } 51% { left: 48px; height: 3.2px; width: calc(100% - 72px); opacity: 0.4; } 100% { left: 48px; height: 3.2px; width: calc(100% - 72px); opacity: 0.0; } } /* */ yt-live-chat-author-chip #chat-badges.yt-live-chat-author-chip, yt-live-chat-author-chip #chat-badges.yt-live-chat-author-chip yt-live-chat-author-badge-renderer, yt-live-chat-author-chip #chat-badges.yt-live-chat-author-chip yt-live-chat-author-badge-renderer #image, yt-live-chat-author-chip #chat-badges.yt-live-chat-author-chip yt-live-chat-author-badge-renderer #image img { contain: layout style; display: inline-flex; vertical-align: middle; } sl-1 = 0px if emoji-shadow-size > 1 { sl=(emoji-shadow-size - 1) * 0.5px // sr=-1 * sl // sl-1 = sl // } sl-2 = sl-1 + emoji-margin sl-3 = sl-1 .emoji{ --emoji-margin-left: sl-2; } .emoji + .emoji { --emoji-margin-left: sl-1; } #message.yt-live-chat-text-message-renderer .emoji.yt-live-chat-text-message-renderer { contain: layout paint style; display: inline-block; if emoji-shadow-size > 1 { filter: drop-shadow(0px sl 0px emoji-shadow) drop-shadow(sl 0px 0px emoji-shadow) drop-shadow(sr 0px 0px emoji-shadow) drop-shadow(0px sr 0px emoji-shadow); } margin-left: var(--emoji-margin-left); margin-right: sl-2; margin-top: sl-3; margin-bottom: sl-1; border-bottom: var(--emoji-vertical-shift-px) solid transparent; if emoji-normalize-enable { --emoji-font-size: emoji-font-size; height: calc(var(--emoji-font-size) * 1.12); width: auto; object-fit: contain; } } body yt-img-shadow#author-photo.style-scope.yt-live-chat-text-message-renderer { contain-intrinsic-size: author-icon-size author-icon-size; } yt-live-chat-text-message-renderer.yt-live-chat-item-list-renderer yt-live-chat-author-chip.yt-live-chat-text-message-renderer { align-items: center; display: inline-flex; flex-direction: row; margin: 0; font-size: author-font-size-2; --author-font-size-2: author-font-size-2; --line-height-author-name: line-height-author-name; line-height: var(--line-height-author-name); } yt-live-chat-text-message-renderer.yt-live-chat-item-list-renderer yt-live-chat-author-chip.yt-live-chat-paid-message-renderer { align-items: center; display: inline-flex; flex-direction: row; font-size: author-font-size-2; --author-font-size-2: author-font-size-2; --line-height-author-name: line-height-author-name; line-height: var(--line-height-author-name); } #items yt-live-chat-text-message-renderer { // weak selector contain: layout style; } // xfont-variant-east-asian=unset // ; if ruby-font { // xfont-variant-east-asian=ruby // } // if pw-font { // xfont-variant-east-asian=proportional-width // } // if ruby-font and pw-font { // xfont-variant-east-asian=ruby proportional-width // } // // yt-live-chat-item-list-renderer:not([allow-scroll]) #item-scroller.yt-live-chat-item-list-renderer { overflow-y: scroll; padding-right: 0; } #items.style-scope.yt-live-chat-item-list-renderer { if chat-author-vline-enable { paid-msg-pl = 20px paid-msg-vline-padding = paid-msg-pl + 48px paid-msg-vline-ml = -120px - paid-msg-pl - author-icon-size-diff + padding-left-author-icon - 2 * vline-gap-1-px - 10px & > yt-live-chat-paid-message-renderer, & > yt-live-chat-membership-item-renderer { --paid-msg-pl: paid-msg-pl; --paid-msg-vline-padding: paid-msg-vline-padding; --paid-msg-vline-ml: paid-msg-vline-ml; padding: 4px var(--paid-msg-vline-padding); position: relative !important; &::before { makeBoxShadow() margin-left: var(--paid-msg-vline-ml); } } .yt-live-chat-paid-message-renderer, .yt-live-chat-membership-item-renderer { &#author-photo.style-scope.no-transition { position:fixed; left:0px; align-self: center; display: flex; padding: 0; margin: 0; z-index: 1; margin: 0 0 0 padding-left-author-icon; &, & img[src] { height: author-icon-size; object-fit: contain; width: auto; } } &#header { padding: 8px 14px 8px 14px; } if fade-author-icon-enable { &#author-photo{ opacity: author-icon-opacity; transition: opacity 300ms; &:hover{ opacity: 1; } } } &#menu.style-scope yt-icon-button { position:fixed; right:0; } } } else { } & > .yt-live-chat-item-list-renderer #card #header:has(#overlay-image) { min-height: 48px; } // --yt-live-chat-sponsor-color: #2ba640; --yt-live-chat-sponsor-color: color-sponsor-text; // // --yt-live-chat-secondary-text-color: rgba(255, 255, 255, 0.7); --yt-live-chat-secondary-text-color: #ddd; // // --yt-live-chat-author-chip-owner-background-color: #ffd600; --yt-live-chat-author-chip-owner-background-color: color-owner-chip-background; // --yt-live-chat-moderator-color: #5e84f1; --yt-live-chat-moderator-color: color-moderator-text; // & > yt-live-chat-text-message-renderer.yt-live-chat-item-list-renderer #message.yt-live-chat-text-message-renderer { padding: 0px 0px; margin-left: padding-left-message; display: block; align-items: center; min-height: 2.6rem; font-size: message-font-size; --line-height-message: line-height-message; line-height: var(--line-height-message); /* margin-left:2px; margin-right:2px; */ font-variant-east-asian: xfont-variant-east-asian; letter-spacing: 0px !important; } #author-name { --yt-live-chat-secondary-text-color: color-general-author; word-break: break-word; display: inline; vertical-align: middle; } & > yt-live-chat-text-message-renderer.yt-live-chat-item-list-renderer #message.yt-live-chat-text-message-renderer a { color: inherit !important; font-variant-east-asian: revert; } yt-live-chat-author-chip.yt-live-chat-text-message-renderer { --author-chip-display: inline-block; --author-chip-mt: 4px; --author-chip-mb: 2px; } #author-photo.yt-live-chat-text-message-renderer { align-self: center; display: flex; padding: 0; margin-top: 0 margin-right: author-icon-mr !important; /* important for Kaitei */ margin-bottom:0; margin-left: padding-left-author-icon; z-index: 1; } #author-photo.yt-live-chat-text-message-renderer img[src] { height: author-icon-size; object-fit: contain; width: auto; } img.yt-live-chat-author-badge-renderer { height: member-icon-font-size; width: auto; } #chat-badges.style-scope.yt-live-chat-author-chip { /* display: inline;*/ flex-direction: row; align-items: center; justify-items: center; } & > yt-live-chat-text-message-renderer.yt-live-chat-item-list-renderer { padding: 0; margin: 0; padding-right: 28px; margin-right: 4px; if fade-author-icon-enable { #author-photo.yt-live-chat-text-message-renderer { opacity: author-icon-opacity; transition: opacity 300ms; } #author-photo.yt-live-chat-text-message-renderer:hover { opacity: 1; } } } if loading-effect-ms > 0 { & > yt-live-chat-text-message-renderer.yt-live-chat-item-list-renderer::before { content: ''; display: block; position: absolute; background: rgba(77, 77, 77, 0.5); animation: yt-live-chat-text-message-renderer-animation2 loading-effect-ms linear 0ms 1 normal forwards; pointer-events: none; touch-action: none; user-select: none; transform-origin: 50% 50%; width: 32px; bottom: 0; height: 16px; border-radius: 32px; z-index: 1; } } & > yt-live-chat-text-message-renderer.yt-live-chat-item-list-renderer:hover #content { opacity: 1.0 !important; } & > yt-live-chat-text-message-renderer.yt-live-chat-item-list-renderer #content { transform-origin: 0 50%; opacity: final-message-opacity; if line-height-min > 0 and min-content-text-height > 0 { --line-height-min: line-height-min; --line-height-adjust: (min-content-text-height * 2px); min-height: calc(var(--line-height-min) + var(--line-height-adjust)); } } if message-opacity-ms > 0 { & > yt-live-chat-text-message-renderer.yt-live-chat-item-list-renderer #content { animation: yt-live-chat-text-message-renderer-animation3 message-opacity-ms ease-in 0s 1 normal forwards; } } if chat-author-vline-enable { & > yt-live-chat-text-message-renderer.yt-live-chat-item-list-renderer #content::before { makeBoxShadow() margin-left: cb-ml; } } --author-color-set-1-1: #69696918; --author-color-set-1-2: #a9a9a918; --author-color-set-1-3: #dcdcdc18; --author-color-set-1-4: #2f4f4f18; --author-color-set-1-5: #556b2f18; --author-color-set-1-6: #6b8e2318; --author-color-set-1-7: #a0522d18; --author-color-set-1-8: #228b2218; --author-color-set-1-9: #80000018; --author-color-set-1-10: #19197018; --author-color-set-1-11: #483d8b18; --author-color-set-1-12: #3cb37118; --author-color-set-1-13: #bc8f8f18; --author-color-set-1-14: #66339918; --author-color-set-1-15: #00808018; --author-color-set-1-16: #b8860b18; --author-color-set-1-17: #bdb76b18; --author-color-set-1-18: #4682b418; --author-color-set-1-19: #00008018; --author-color-set-1-20: #d2691e18; --author-color-set-1-21: #9acd3218; --author-color-set-1-22: #20b2aa18; --author-color-set-1-23: #cd5c5c18; --author-color-set-1-24: #32cd3218; --author-color-set-1-25: #8fbc8f18; --author-color-set-1-26: #8b008b18; --author-color-set-1-27: #b0306018; --author-color-set-1-28: #d2b48c18; --author-color-set-1-29: #66cdaa18; --author-color-set-1-30: #ff000018; --author-color-set-1-31: #ffa50018; --author-color-set-1-32: #ffd70018; --author-color-set-1-33: #ffff0018; --author-color-set-1-34: #c7158518; --author-color-set-1-35: #0000cd18; --author-color-set-1-36: #7fff0018; --author-color-set-1-37: #00ff0018; --author-color-set-1-38: #ba55d318; --author-color-set-1-39: #00fa9a18; --author-color-set-1-40: #4169e118; --author-color-set-1-41: #e9967a18; --author-color-set-1-42: #dc143c18; --author-color-set-1-43: #00ffff18; --author-color-set-1-44: #00bfff18; --author-color-set-1-45: #f4a46018; --author-color-set-1-46: #9370db18; --author-color-set-1-47: #0000ff18; --author-color-set-1-48: #a020f018; --author-color-set-1-49: #ff634718; --author-color-set-1-50: #d8bfd818; --author-color-set-1-51: #ff00ff18; --author-color-set-1-52: #db709318; --author-color-set-1-53: #f0e68c18; --author-color-set-1-54: #6495ed18; --author-color-set-1-55: #dda0dd18; --author-color-set-1-56: #87ceeb18; --author-color-set-1-57: #ff149318; --author-color-set-1-58: #afeeee18; --author-color-set-1-59: #ee82ee18; --author-color-set-1-60: #98fb9818; --author-color-set-1-61: #7fffd418; --author-color-set-1-62: #ff69b418; --author-color-set-1-63: #ffe4c418; --author-color-set-1-64: #ffb6c118; --author-color-1-default: var(--author-color-set-1-64); & > .yt-live-chat-item-list-renderer { & { --author-color-1: var(--author-color-1-default); --author-color-2: var(--author-color-1-default); } gen1() } } @supports (contain: layout paint style) { /* contain: layout paint style; // #item-offset uses transform, it is buggy in Opera 93.0 with contain: layout & paint */ body yt-live-chat-app { contain: size layout paint style; content-visibility: auto; transform: translate3d(0, 0, 0); overflow: hidden; } #items.style-scope.yt-live-chat-item-list-renderer{ contain: layout paint style; } #item-offset.style-scope.yt-live-chat-item-list-renderer { contain: style; } #item-scroller.style-scope.yt-live-chat-item-list-renderer { contain: size style; } #contents.style-scope.yt-live-chat-item-list-renderer, #chat.style-scope.yt-live-chat-renderer, img.style-scope.yt-img-shadow[width][height] { contain: size layout paint style; } .style-scope.yt-live-chat-ticker-renderer[role="button"][aria-label], .style-scope.yt-live-chat-ticker-renderer[role="button"][aria-label]>#container { contain: layout paint style; } yt-img-shadow#author-photo.style-scope { contain: layout paint style; content-visibility: auto; contain-intrinsic-size: 24px 24px; } yt-live-chat-text-message-renderer:not([author-is-owner]) #author-photo.style-scope.yt-live-chat-text-message-renderer, yt-live-chat-text-message-renderer:not([author-is-owner]) yt-live-chat-author-chip.style-scope.yt-live-chat-text-message-renderer { pointer-events: var(--tabview-msg-pointer-events); } yt-live-chat-text-message-renderer:not([author-is-owner]) span#message.style-scope.yt-live-chat-text-message-renderer>img.emoji.yt-formatted-string.style-scope.yt-live-chat-text-message-renderer { cursor: var(--tabview-msg-cursor); } yt-live-chat-text-message-renderer:not([author-is-owner]) span#message.style-scope.yt-live-chat-text-message-renderer, yt-live-chat-paid-message-renderer #message.yt-live-chat-paid-message-renderer, yt-live-chat-text-message-renderer:not([author-is-owner]) #timestamp.style-scope.yt-live-chat-text-message-renderer, yt-live-chat-membership-item-renderer #header-content.style-scope.yt-live-chat-membership-item-renderer, yt-live-chat-membership-item-renderer #timestamp.style-scope.yt-live-chat-membership-item-renderer, yt-live-chat-paid-message-renderer #header-content.yt-live-chat-paid-message-renderer, yt-live-chat-paid-message-renderer #timestamp.style-scope.yt-live-chat-paid-message-renderer, yt-live-chat-paid-sticker-renderer #content.style-scope.yt-live-chat-paid-sticker-renderer, yt-live-chat-paid-sticker-renderer #timestamp.style-scope.yt-live-chat-paid-sticker-renderer { cursor: var(--tabview-msg-cursor); pointer-events: var(--tabview-msg-pointer-events); } yt-live-chat-text-message-renderer.style-scope.yt-live-chat-item-list-renderer, yt-live-chat-membership-item-renderer.style-scope.yt-live-chat-item-list-renderer, yt-live-chat-paid-message-renderer.style-scope.yt-live-chat-item-list-renderer, yt-live-chat-banner-manager.style-scope.yt-live-chat-item-list-renderer { contain: layout style; } tp-yt-paper-tooltip[style*="inset"][role="tooltip"] { contain: layout paint style; } } #item-offset.style-scope.yt-live-chat-item-list-renderer { position: relative !important; height: auto !important; } #item-offset.style-scope.yt-live-chat-item-list-renderer > #items.style-scope.yt-live-chat-item-list-renderer { position: static !important; } }
QingJ © 2025
镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址