최근 바뀜
도구
업로드
도움말
문서 작성
위키 문법
길라잡이
특수 문서
문의·신고
디스코드
IP 사용자
216.73.216.149
로그인
미디어위키:Gadget-CSSVars.js 문서 원본 보기
←
미디어위키:Gadget-CSSVars.js
편집
토론
역사
새로고침
주시
역링크
정보
문서 편집 권한이 없습니다. 다음 이유를 확인해주세요:
요청한 명령은 다음 권한을 가진 사용자에게 제한됩니다:
사용자
.
이 문서는 이 위키의 소프트웨어 인터페이스에 쓰이는 문서로, 부정 행위를 막기 위해 보호되어 있습니다. 모든 위키에 대한 번역을 추가하거나 바꾸려면 미디어위키 지역화 프로젝트인
translatewiki.net
에 참여하시기 바랍니다.
모든 방문자에게 영향을 미칠 수 있기 때문에 이 자바스크립트 문서의 편집 권한이 없습니다.
문서의 원본을 보거나 복사할 수 있습니다.
mw.hook('wikipage.content').add(function ($content) { const el = $content.find('.mw-css-vars').first(); if (!el.length) return; let vars; try { vars = JSON.parse(el.attr('data-vars')); } catch (e) { console.error('PageCSSVars: invalid JSON', e); return; } const light = {}; const dark = {}; const common = {}; Object.entries(vars).forEach(([key, value]) => { if (key.endsWith('-light')) { light[key.replace(/-light$/, '')] = value; } else if (key.endsWith('-dark')) { dark[key.replace(/-dark$/, '')] = value; } else { common[key] = value; } }); const makeVars = (obj) => Object.entries(obj) .map(([k, v]) => `--${k}: ${v} !important;`) .join(''); let css = ''; if (Object.keys(common).length) { css += `:root{${makeVars(common)}}`; } if (Object.keys(light).length) { css += ` @media (prefers-color-scheme: light){ :root{${makeVars(light)}} }`; } if (Object.keys(dark).length) { css += ` @media (prefers-color-scheme: dark){ :root{${makeVars(dark)}} }`; } if (css.trim()) { mw.util.addCSS(css); } });
미디어위키:Gadget-CSSVars.js
문서로 돌아갑니다.