MediaWiki:Common.css
外观
注意:在发布之后,您可能需要清除浏览器缓存才能看到所作出的更改的影响。
- Firefox或Safari:按住Shift的同时单击刷新,或按Ctrl-F5或Ctrl-R(Mac为⌘-R)
- Google Chrome:按Ctrl-Shift-R(Mac为⌘-Shift-R)
- Edge:按住Ctrl的同时单击刷新,或按Ctrl-F5。
/* ========================================
简中Robloxian Wiki — 亮色:清新淡绿
暗色:ED 颓废暗紫(自动跟随系统)
======================================== */
/* ---------- 基础 ---------- */
html {
background-color: #e6f5e6;
}
body,
#content,
.mw-body,
.mw-page-container,
#bodyContent {
background-color: #e6f5e6 !important;
color: #1a1a1a;
font-family: 'Helvetica Neue', 'Arial', 'Noto Sans SC', 'Microsoft YaHei', sans-serif;
}
.mw-parser-output {
background: transparent;
}
/* ---------- 布局 ---------- */
.chanmoegrid {
display: flex;
flex-wrap: wrap;
gap: 20px;
max-width: 1200px;
margin: 0 auto;
padding: 20px;
}
.chanmoecard {
background: #ffffff;
border-radius: 20px;
box-shadow: 0 6px 16px rgba(0,0,0,0.05);
padding: 24px;
border: 2px solid transparent;
transition: all 0.2s ease;
}
.chanmoecard:hover {
border-color: #a5d6a7;
}
.chanmoe-welcome {
flex: 1 1 100%;
background: linear-gradient(135deg, #c8e6c9, #dcedc1);
color: #1f3b1f;
text-align: center;
border-radius: 24px;
padding: 36px 24px;
}
.chanmoe-main {
flex: 2;
min-width: 280px;
}
.chanmoe-side {
flex: 1;
min-width: 250px;
}
/* ---------- 欢迎区 ---------- */
.welcome-title {
font-size: 2em;
font-weight: bold;
margin: 10px 0;
}
.welcome-sub {
font-size: 1.1em;
background: linear-gradient(90deg, #4CAF50, #2196F3);
-webkit-background-clip: text;
background-clip: text;
color: transparent;
font-weight: 500;
margin: 0;
}
.ascii-divider {
color: #a5d6a7;
font-family: monospace;
text-align: center;
font-size: 0.9em;
margin: 14px 0;
}
.welcome-nav {
margin-top: 16px;
}
/* ---------- 标题 ---------- */
.chanmoe-title {
font-size: 1.3em;
font-weight: bold;
margin-bottom: 14px;
padding-bottom: 10px;
border-bottom: 3px dashed #80cbc4;
color: #0066cc;
}
/* ---------- 按钮 ---------- */
.chanboard-grid {
display: flex;
flex-wrap: wrap;
gap: 10px;
}
.chanboard-btn {
background: #e8f5e9;
padding: 10px 18px;
border-radius: 30px;
color: #0066cc;
text-decoration: none;
font-weight: bold;
font-family: "Courier New", monospace;
box-shadow: 0 2px 6px rgba(0,0,0,0.05);
display: inline-block;
transition: all 0.2s;
border: none;
}
.chanboard-btn a {
color: inherit;
text-decoration: none;
}
.chanboard-btn:hover {
background: #b9f6ca;
color: #000;
transform: translateY(-2px);
}
/* ---------- 新闻 ---------- */
.chanmoe-news {
padding: 0;
overflow: hidden;
}
.chanmoe-news .chanmoe-title {
background: #e6f4e6;
padding: 12px 20px;
margin: 0;
border-bottom: 1px dashed #88cccc;
border-radius: 20px 20px 0 0;
}
.news-list {
padding: 18px 22px;
line-height: 1.6;
}
.news-item {
margin-bottom: 14px;
padding-bottom: 14px;
border-bottom: 1px solid #e0e0e0;
}
.news-item:last-child {
margin-bottom: 0;
padding-bottom: 0;
border-bottom: none;
}
.news-date {
font-size: 1.1em;
font-weight: bold;
color: #662222;
margin-bottom: 6px;
}
.news-body {
color: #333;
}
.news-footer {
text-align: right;
padding: 10px 20px;
background: #e6f4e6;
border-top: 1px dashed #88cccc;
font-size: 0.9em;
}
.news-footer a {
color: #0066cc;
text-decoration: none;
}
/* ---------- 列表 ---------- */
.chanlist {
list-style: none;
margin: 0;
padding: 0;
}
.chanlist li {
padding: 8px 0;
border-bottom: 1px solid #e0e0e0;
font-size: 0.95em;
}
.chanlist li:last-child {
border-bottom: none;
}
.chanlist a {
color: #0066cc;
text-decoration: none;
font-weight: bold;
}
.chanlist a:hover {
color: #003c8f;
text-decoration: underline;
}
/* ---------- 留言 ---------- */
.chanpost {
background: #f1f8e9;
border-radius: 12px;
padding: 14px;
margin-top: 10px;
border-left: 4px solid #66bb6a;
line-height: 1.6;
}
.post-no {
color: #757575;
font-size: 0.85em;
font-weight: bold;
display: block;
margin-bottom: 4px;
}
.side-note {
font-size: 0.85em;
margin: 10px 0 0;
color: #555;
}
.chanpost-empty {
padding: 24px;
text-align: center;
color: #888;
font-weight: bold;
}
/* ---------- 冒犯提示条 ---------- */
.chanmoe-offense-bar {
margin-top: 20px;
padding: 12px 18px;
border-radius: 10px;
text-align: center;
border: 1px solid #c8e6c9;
font-size: 0.95em;
background: rgba(255,255,255,0.4);
color: #333;
}
.chanmoe-offense-bar a {
color: #c41e3a;
font-weight: bold;
}
/* ---------- 你知道吗 ---------- */
.chanmoe-dyk {
padding-bottom: 16px;
}
.dyk-list {
padding: 4px 2px;
}
.dyk-item {
display: flex;
align-items: flex-start;
gap: 14px;
padding: 14px;
margin-bottom: 10px;
background: #f8faf8;
border-radius: 12px;
border-left: 4px solid #4CAF50;
transition: all 0.2s ease;
}
.dyk-item:hover {
background: #e8f5e9;
transform: translateX(4px);
}
.dyk-num {
font-family: 'Courier New', monospace;
font-size: 1.6em;
font-weight: 900;
color: #4CAF50;
line-height: 1;
min-width: 32px;
text-align: center;
opacity: 0.7;
}
.dyk-text {
color: #333;
line-height: 1.7;
font-size: 0.95em;
padding-top: 2px;
}
.dyk-text a {
color: #1565c0;
text-decoration: none;
border-bottom: 1px dotted #1565c0;
}
.dyk-text a:hover {
color: #0d47a1;
border-bottom-style: solid;
}
/* ---------- 移动端 ---------- */
@media (max-width: 768px) {
.chanmoegrid {
flex-direction: column;
}
.chanmoecard {
padding: 20px;
}
}
/* ========================================
暗色模式:ED 颓废暗紫
低饱和、阴郁、不花哨
======================================== */
@media (prefers-color-scheme: dark) {
/* 全局背景:暗紫灰,不是纯黑 */
html,
body,
#content,
.mw-body,
.mw-page-container,
#bodyContent,
.mw-parser-output {
background-color: #1a1423 !important;
color: #c4b8d4 !important;
}
/* 所有文字元素 */
.mw-body p,
.mw-body li,
.mw-body td,
.mw-body th,
.mw-body h1,
.mw-body h2,
.mw-body h3,
.mw-body h4,
.mw-body h5,
.mw-body h6,
#firstHeading,
.mw-page-title-main,
.mw-parser-output p,
.mw-parser-output li,
.mw-parser-output h2,
.mw-parser-output h3,
.mw-parser-output div,
.mw-parser-output span {
color: #c4b8d4 !important;
}
/* 链接:暗紫里的毒蘑菇色 */
a {
color: #9b7cb6 !important;
text-decoration: none;
border-bottom: 1px solid transparent;
}
a:hover {
color: #d4a5e0 !important;
border-bottom-color: #9b7cb6;
}
a:visited {
color: #7a5a9e !important;
}
/* ---------- 布局 ---------- */
.chanmoegrid {
gap: 20px;
padding: 20px;
}
/* 卡片:暗紫底,细边框,无阴影 */
.chanmoecard {
background: #241e2e !important;
border-radius: 8px !important;
box-shadow: none !important;
padding: 24px;
border: 1px solid #3d3450;
}
.chanmoecard:hover {
border-color: #5a4d70;
}
/* 欢迎区:暗紫,不花哨 */
.chanmoe-welcome {
background: #1e1828 !important;
color: #d4c8e0 !important;
border-radius: 8px !important;
border: 1px solid #3d3450;
}
.welcome-title {
color: #e0d4f0 !important;
}
.welcome-sub {
-webkit-background-clip: unset !important;
background-clip: unset !important;
color: #9b7cb6 !important;
background: transparent !important;
}
.ascii-divider {
color: #5a4d70 !important;
}
/* ---------- 标题 ---------- */
.chanmoe-title {
color: #d4a5e0 !important;
border-bottom-color: #5a4d70;
}
.chanmoe-title::before {
color: #9b7cb6;
}
.chanmoe-news .chanmoe-title {
background: #1e1828 !important;
border-bottom-color: #5a4d70;
border-radius: 8px 8px 0 0 !important;
}
/* ---------- 按钮 ---------- */
.chanboard-btn {
background: #2a2438 !important;
color: #c4b8d4 !important;
border: 1px solid #3d3450 !important;
border-radius: 4px !important;
font-family: "Courier New", monospace;
box-shadow: none !important;
}
.chanboard-btn:hover {
background: #3d3450 !important;
color: #e0d4f0 !important;
border-color: #5a4d70 !important;
transform: none !important;
}
/* ---------- 新闻 ---------- */
.news-list {
padding: 18px 22px;
}
.news-item {
border-bottom-color: #3d3450;
}
.news-item:hover {
background: rgba(155, 124, 182, 0.05);
}
.news-date {
color: #d4a5e0 !important;
background: #2a2438;
border: 1px solid #3d3450;
font-family: 'Courier New', monospace;
}
.news-body {
color: #b0a0c4 !important;
}
.news-footer {
background: #1e1828 !important;
border-top-color: #5a4d70;
color: #9b7cb6 !important;
}
.news-footer a {
color: #9b7cb6 !important;
}
.news-footer a:hover {
color: #d4a5e0 !important;
}
/* ---------- 列表 ---------- */
.chanlist li {
border-bottom-color: #3d3450;
color: #b0a0c4 !important;
}
.chanlist a {
color: #9b7cb6 !important;
}
.chanlist a:hover {
color: #d4a5e0 !important;
}
.chanlist li:hover {
background: rgba(155, 124, 182, 0.08);
}
.chanlist li::before {
color: #7a5a9e;
}
/* ---------- 留言 ---------- */
.chanpost {
background: #241e2e !important;
border-radius: 4px !important;
border-left-color: #5a4d70;
color: #b0a0c4 !important;
}
.post-no {
color: #9b7cb6 !important;
}
.side-note {
color: #7a6a90 !important;
}
.side-note a {
color: #9b7cb6 !important;
}
.chanpost-empty {
color: #5a4d70 !important;
}
/* ---------- 冒犯提示条 ---------- */
.chanmoe-offense-bar {
background: #2a2438 !important;
color: #b0a0c4 !important;
border-color: #5a4d70 !important;
border-radius: 4px !important;
}
.chanmoe-offense-bar a {
color: #d4a5e0 !important;
}
/* ---------- 你知道吗 ---------- */
.dyk-item {
background: #241e2e !important;
border-radius: 4px !important;
border-left-color: #5a4d70;
}
.dyk-item:hover {
background: #2a2438 !important;
transform: translateX(4px);
border-left-color: #7a5a9e;
}
.dyk-num {
color: #7a5a9e !important;
opacity: 1;
}
.dyk-text {
color: #b0a0c4 !important;
}
.dyk-text a {
color: #9b7cb6 !important;
border-bottom-color: #5a4d70;
}
.dyk-text a:hover {
background: #3d3450;
color: #e0d4f0 !important;
border-bottom-color: transparent;
}
/* ---------- 黑幕 ---------- */
.heimu,
.heimu a,
a .heimu,
.heimu a.new {
background-color: #2a2438 !important;
color: #2a2438 !important;
}
.heimu:hover,
.heimu:active {
color: #d4c8e0 !important;
}
.heimu:hover a,
a:hover .heimu,
.heimu:active a,
a:active .heimu {
color: #d4a5e0 !important;
}
}
/* ---------- 剧透文字(全局) ---------- */
.spoiler-text {
transition: background 0.2s, color 0.2s;
}
.spoiler-text.revealed {
background: transparent !important;
color: inherit !important;
}
.heimu,
.heimu a,
a .heimu,
.heimu a.new {
background-color: #252525;
color: #252525;
text-shadow: none;
cursor: pointer;
}
.heimu:hover,
.heimu:active {
color: white !important;
}
.heimu:hover a,
a:hover .heimu,
.heimu:active a,
a:active .heimu {
color: lightblue !important;
}
$(function() {
// ========== 配置区 ==========
var PAD = 6;
var BASE_URL = 'https://wiki.meltfi.top/Special:Filepath/'; // ← 改这里
// ==========================
var container = document.getElementById('neko-page-counter');
if (!container) return;
var total = mw.config.get('wgNumberOfPages') || 0;
var digits = String(total).padStart(PAD, '0').split('');
container.style.cssText = 'display:flex;align-items:flex-end;justify-content:center;gap:0;';
var parentW = container.parentElement ? container.parentElement.clientWidth : 600;
var imgW = Math.max(28, Math.min(100, Math.floor((parentW - 20) / PAD)));
var imgH = Math.round(imgW * 1.25);
digits.forEach(function(d) {
var img = document.createElement('img');
img.src = BASE_URL + d + '.gif';
img.alt = d;
img.style.cssText = 'width:' + imgW + 'px;height:' + imgH + 'px;object-fit:contain;image-rendering:pixelated;image-rendering:crisp-edges;display:block;';
img.onerror = function() {
var fb = document.createElement('div');
fb.textContent = d;
fb.style.cssText = 'width:' + imgW + 'px;height:' + imgH + 'px;display:flex;align-items:center;justify-content:center;background:#333;color:#ff9ecd;font-size:' + Math.max(12, Math.floor(imgW * 0.4)) + 'px;font-weight:bold;font-family:monospace;border-radius:3px;';
if (img.parentNode) img.parentNode.replaceChild(fb, img);
};
container.appendChild(img);
});
});