MediaWiki:Common.css
来自Age Of History 2 Chinese Wiki
注意:在发布之后,您可能需要清除浏览器缓存才能看到所作出的更改的影响。
- Firefox或Safari:按住Shift的同时单击刷新,或按Ctrl-F5或Ctrl-R(Mac为⌘-R)
- Google Chrome:按Ctrl-Shift-R(Mac为⌘-Shift-R)
- Edge:按住Ctrl的同时单击刷新,或按Ctrl-F5。
/* 这里放置的CSS将应用于所有皮肤 */ @import url("https://fonts.googleapis.com/css2?family=Press+Start+2P&display=swap"); @import url("https://fastly.jsdelivr.net/gh/hoah2333/Fonts@main/Typeface-VonwaonBitmap-16px.css"); :root { --link-color: #0645ad; --link-color-active: #faa700; --custom-background-blue: #ccf; --custom-background-cyan: #cef; --custom-background-green: #cfc; --custom-background-gray: #d2d2d2; --custom-background-grey: var(--custom-background-gray); --custom-background-magenta: #fdf; --custom-background-orange: #fdb; --custom-background-purple: #ecf; --custom-background-red: #fcc; --custom-background-yellow: #ffc; --custom-border-blue: #36e; --custom-border-cyan: #9df; --custom-border-green: #5d5; --custom-border-gray: #bbb; --custom-border-grey: var(--custom-border-gray); --custom-border-magenta: #f9f; --custom-border-orange: #f90; --custom-border-purple: #96c; --custom-border-red: #e44; --custom-border-yellow: #fc3; --custom-closed-topic-neutral: #eef; --custom-closed-topic-no: #fee; --custom-closed-topic-yes: #efe; --custom-code-background: #f8f9fa; --custom-load-page-button-color: #fff8; --custom-main-page-background: #fcfcfc; --custom-main-page-border: var(--custom-border-gray); --custom-main-page-edition-subheader: #333; --custom-mcwiki-header-color: #bcd4f5; --custom-navbox-background: #fff; --custom-navbox-top: #ccc; --custom-navbox-middle: #ddd; --custom-navbox-thru: #eee; --custom-nbt-inherit-color: #e6e6fa; --custom-table-background: #f8f9fa; --custom-table-alternate-background: #f0f1f2; --custom-table-choice-always: #003600; --custom-table-choice-always-background: #80d080; --custom-table-choice-default: #fff; --custom-table-choice-in-off-background: #060; --custom-table-choice-in-on-background: #0c0; --custom-table-choice-na: #000; --custom-table-choice-na-background: #fff; --custom-table-choice-neutral: #634800; --custom-table-choice-neutral-background: #ffeb9c; --custom-table-choice-never: #3c0404; --custom-table-choice-never-background: #ff8080; --custom-table-choice-no: #840606; --custom-table-choice-no-background: #ffc7ce; --custom-table-choice-out-off-background: #900; --custom-table-choice-out-on-background: #f00; --custom-table-choice-partial: #665400; --custom-table-choice-partial-background: #ffd; --custom-table-choice-planned: #0131b7; --custom-table-choice-planned-background: #dfdfff; --custom-table-choice-rarely: #533400; --custom-table-choice-rarely-background: #fdce5e; --custom-table-choice-unknown: #222; --custom-table-choice-unknown-background: #ccc; --custom-table-choice-yes: #005600; --custom-table-choice-yes-background: #c6efce; --custom-table-header-background: #eaecf0; --custom-topic-30-days: #bbb; --custom-topic-7-days: #ddd; /* CRT效果相关变量 - 调整效果 */ --crt-scanline-alpha: 0.1; /* 调整扫描线透明度 */ --crt-flicker-alpha: 0.03; --crt-noise-alpha: 0.025; /* 增加轻微噪点 */ --crt-glow-radius: 0.08em; --crt-glow-color: rgba(0, 255, 100, 0.18); /* 调整辉光颜色和强度 */ --crt-text-shadow: 0 0 var(--crt-glow-radius) var(--crt-glow-color); /* 网格背景相关变量 */ --grid-color: rgba(0, 0, 0, 0.08); --grid-size: 40px; --grid-line-width: 1px; /* 字体设置 - 移除VT323 */ --pixel-font: 'VonwaonBitmap 16px', monospace; --title-font: 'Press Start 2P', var(--pixel-font); --body-font: 'Microsoft YaHei', '微软雅黑', var(--pixel-font), Verdana, Geneva, sans-serif; /* 将雅黑置前 */ --UI-font: var(--body-font); /* 字体大小设置 - 简化 */ --base-font-size: 15px; /* 统一基础字号 */ --title-scale: 1.4; --code-scale: 0.9; /* 边框和内间距设置 */ --side-border-thickness: 0.1rem; --main-border-thickness: 0.05rem; /* 启用/禁用扫描线效果 */ --scanlines-display: block; } /* 基础CRT效果 */ @keyframes flicker { 0%, 100% { opacity: 0.98; } 25% { opacity: 0.95; } 50% { opacity: 0.99; } 75% { opacity: 0.96; } } @keyframes subtle-scanline { 0% { background-position: 0 0; } 100% { background-position: 0 4px; } } @keyframes crt-on { 0% { opacity: 0; filter: brightness(4) saturate(0); } 20% { opacity: 0.5; } 100% { opacity: 1; filter: brightness(1) saturate(1); } } /* 全局和背景样式 - 增加纹理 */ html { min-height: 100%; background-color: #f0f0f0; /* 轻微调整背景色 */ background-image: /* 网格线 */ linear-gradient(var(--grid-color) var(--grid-line-width), transparent var(--grid-line-width)), linear-gradient(90deg, var(--grid-color) var(--grid-line-width), transparent var(--grid-line-width)), /* 细微噪点纹理 */ url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='4' height='4' viewBox='0 0 4 4'%3E%3Cpath fill='%239C92AC' fill-opacity='0.08' d='M1 3h1v1H1V3zm2-2h1v1H3V1z'%3E%3C/path%3E%3C/svg%3E"); background-size: var(--grid-size) var(--grid-size), var(--grid-size) var(--grid-size), auto; background-position: center center; animation: crt-on 1s ease-out; } body { font-family: var(--body-font); font-size: var(--base-font-size); line-height: 1.65; /* 调整行高 */ color: #222; /* 深灰色文本 */ position: relative; min-height: calc(100vh - 2rem); margin: 1rem; padding: 1.5rem; background-color: rgba(255, 255, 255, 0.92); /* 轻微增加透明度 */ border-radius: 4px; box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1), inset 0 0 30px rgba(0, 255, 100, 0.05); /* 调整内阴影 */ animation: flicker 90s infinite alternate ease-in-out; overflow: hidden; /* 隐藏超出部分,配合扫描线 */ } /* 扫描线效果 - 使用单一伪元素 */ body::after { content: ""; display: var(--scanlines-display); position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: repeating-linear-gradient( to bottom, rgba(0, 0, 0, 0) 0px, rgba(0, 0, 0, 0) 2px, /* 透明区域 */ rgba(0, 0, 0, var(--crt-scanline-alpha)) 3px, /* 扫描线 */ rgba(0, 0, 0, var(--crt-scanline-alpha)) 4px /* 扫描线宽度 */ ); background-size: 100% 4px; pointer-events: none; z-index: 9999; opacity: 0.6; mix-blend-mode: multiply; /* 尝试不同的混合模式 */ animation: subtle-scanline 10s linear infinite; } /* 移除之前的噪点效果伪元素(如果存在),现在背景已包含噪点 */ /* CRT启动动画 (移除,如果之前添加了.crt-startup div) */ .crt-startup { display: none; } /* 标题样式 - 简化 */ h1, h2, h3, h4, h5, h6 { font-family: var(--title-font); font-size: calc(var(--base-font-size) * var(--title-scale)); font-weight: normal; text-shadow: var(--crt-text-shadow); letter-spacing: 0.03em; position: relative; margin-top: 1.8em; margin-bottom: 1em; padding-bottom: 0.3em; border-bottom: 1px solid rgba(0, 0, 0, 0.1); /* 简单的下边框 */ color: #111; } /* 移除之前添加的标题:after伪元素 */ h1::after, h2::after, h3::after { content: none; } body h1 { font-size: calc(var(--base-font-size) * 1.8); /* 调整标题大小 */ } h2 { font-size: calc(var(--base-font-size) * 1.6); } h3 { font-size: calc(var(--base-font-size) * 1.4); } h4 { font-size: calc(var(--base-font-size) * 1.2); } h5, h6 { font-size: calc(var(--base-font-size) * 1.1); } /* 链接样式 - 增加质感 */ a { color: var(--link-color); text-decoration: none; position: relative; transition: color 0.2s ease, background-color 0.2s ease, text-shadow 0.2s ease; padding: 1px 3px; border-radius: 2px; text-shadow: 0 0 3px rgba(0, 100, 255, 0.1); } a:hover { color: var(--link-color-active); background-color: rgba(250, 167, 0, 0.1); text-shadow: 0 0 var(--crt-glow-radius) rgba(250, 167, 0, 0.4); } a::after { content: none; } /* 移除之前的下划线动画 */ a.new { color: #ba0000; text-shadow: 0 0 3px rgba(186, 0, 0, 0.2); } a.new:hover { background-color: rgba(186, 0, 0, 0.1); text-shadow: 0 0 var(--crt-glow-radius) rgba(186, 0, 0, 0.4); } /* Infobox样式 - 调整 */ .notaninfobox { position: relative; clear: right; margin: 0 0 1em 1em; width: 350px; font-size: calc(var(--base-font-size) * 0.9); background-color: rgba(248, 249, 250, 0.9); /* 背景色微调 */ float: right; border: 1px solid rgba(0, 0, 0, 0.15); padding: 2px; overflow: auto; z-index: 1; overflow-wrap: anywhere; box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.08), inset 0 0 10px rgba(0, 255, 100, 0.04); animation: flicker 70s infinite alternate; border-radius: 3px; } @media all and (max-width: 511px) { .notaninfobox { float: none; margin-left: 0; width: auto; } } @media all and (max-width: 337px) { .notaninfobox { margin-left: -16px; margin-right: -16px; border-left: none; border-right: none; } } .notaninfobox > .infobox-title { font-family: var(--title-font); font-weight: normal; text-align: center; font-size: 115%; /* 调整标题大小 */ background: linear-gradient(to bottom, #d0e0f8, var(--custom-mcwiki-header-color)); /* 渐变背景 */ color: #333; text-shadow: 0 1px 1px rgba(255, 255, 255, 0.5), var(--crt-text-shadow); padding: 6px 4px; border-bottom: 1px solid rgba(0, 0, 0, 0.1); } .infobox-imagearea { text-align: center; padding: 4px; } .infobox-imagearea > div:not(:first-child) { padding-top: 1em; } /* Horizontally centre animated images */ .infobox-imagearea .animated { display: inline-flex; align-items: center; } .notaninfobox .infobox-rows { display: grid; grid-template-columns: max-content 1fr; gap: 1px; } .notaninfobox .infobox-rows .infobox-row { display: contents; } .notaninfobox .infobox-row .infobox-row-label, .notaninfobox .infobox-row .infobox-row-field { padding: 4px; } .notaninfobox .infobox-row .infobox-row-label { font-family: var(--UI-font); font-weight: 600; /* 加粗标签 */ color: #444; text-shadow: none; } .notaninfobox .infobox-rows .infobox-row:nth-child(2n) .infobox-row-label, .notaninfobox .infobox-rows .infobox-row:nth-child(2n) .infobox-row-field { background-color: rgba(230, 231, 232, 0.7); /* 调整隔行背景色 */ } /* Infoboxes with tabber */ .tabber-container-infobox .tabber .tabbertab, .tabber-container-infobox ul.tabbernav li a, .tabber-container-infobox ul.tabbernav li.tabberactive a { background: none; border: none; } .tabber-container-infobox .tabber .tabbertab { padding: 0; } .tabber-container-infobox ul.tabbernav { font: inherit; font-size: 100%; } .tabber-container-infobox ul.tabbernav li a:hover { color: #000; } .tabber-container-infobox ul.tabbernav > li { margin-bottom: 5px; padding: 0; } .tabber-container-infobox ul.tabbernav > li > a { color: #595959; padding-bottom: 1px; display: block; font-family: var(--pixel-font); } .tabber-container-infobox ul.tabbernav > li > a::before { display: block; content: attr(alt); font-weight: bold; height: 0; color: transparent; overflow: hidden; visibility: hidden; } .tabber-container-infobox ul.tabbernav > li.tabberactive { border: none; } .modulebox { border: 1px solid #ccc; padding: 10px; margin: 10px 0; background-color: #f9f9f9; box-shadow: 0 0 var(--crt-glow-radius) var(--crt-glow-color); } .tabber-container-infobox ul.tabbernav > li.tabberactive > a { font-weight: bold; color: var(--link-color); border-bottom: 2px solid var(--custom-mcwiki-header-color); } .infobox-rows p { margin: 0; } .infobox-rows dl + dl { margin-top: -0.4em; } .infobox-rows dl:last-child { margin-bottom: 0.2em; } .infobox-footer { text-align: center; font-family: var(--pixel-font); text-shadow: 0 0 var(--crt-glow-radius) var(--crt-glow-color); } /* 页面底部导航框 - 调整 */ table.navbox{ border: 1px solid #bbb; background-color: rgba(253, 253, 253, 0.95); box-shadow: 1px 1px 4px rgba(0, 0, 0, 0.07); } .navbox-title, table.navbox th{ background: linear-gradient(to bottom, #c5f0c5, #a5e4a5); color: #224422; text-shadow: 0 1px 1px rgba(255, 255, 255, 0.4), var(--crt-text-shadow); } .navbox-abovebelow, .navbox-group, .navbox-subgroup .navbox-title{ background: linear-gradient(to bottom, #d0f5d0, #c0ecc0); color: #335533; text-shadow: 0 1px 1px rgba(255, 255, 255, 0.3), var(--crt-text-shadow); } .navbox-subgroup .navbox-group, .navbox-subgroup .navbox-abovebelow{ background: linear-gradient(to bottom, #f0fff0, #e6f6e6); } .navbox-even{ background-color: rgba(245, 252, 245, 0.8); } .navbox-odd{ background-color: rgba(253, 253, 253, 0.8); } /* 按钮样式 - 以.collapseButton为例 */ .collapseButton { font-family: var(--UI-font); font-size: calc(var(--base-font-size) * 0.85); padding: 3px 8px; border: 1px solid rgba(0, 0, 0, 0.2); border-radius: 3px; background: linear-gradient(to bottom, #eee, #ddd); color: #333; text-shadow: 0 1px 0 rgba(255, 255, 255, 0.6); box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1), inset 0 1px 0 rgba(255, 255, 255, 0.5); cursor: pointer; transition: all 0.15s ease; float: right; font-weight: normal; text-align: right; width: auto; margin: 2px 4px; } .collapseButton:hover { background: linear-gradient(to bottom, #f5f5f5, #e0e0e0); border-color: rgba(0, 0, 0, 0.3); box-shadow: 0 1px 2px rgba(0, 0, 0, 0.15), inset 0 1px 0 rgba(255, 255, 255, 0.6); } .collapseButton:active { background: linear-gradient(to bottom, #ddd, #ccc); box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.2); text-shadow: none; } .navbox .collapseButton { width: 6em; } /* 黑幕效果 */ .heimu, .heimu rt{ --heimu-color: #252525; --heimu-text-color: #fff; --heimu-link-color: #add8e6; --heimu-visited-link-color: #c5cae9; --heimu-new-link-color: #fcc; --heimu-new-visited-link-color: #ef9a9a; --heimu-extiw-visited-link-color: #d1c4e9; background-color: var(--heimu-color); } .heimu, .heimu a, a .heimu, a.new .heimu, span.heimu a:visited, span.heimu a.new, span.heimu a.external, span.heimu a.external:visited, span.heimu a.extiw, span.heimu a.extiw:visited, span.heimu a.mw-disambig, span.heimu a.mw-redirect{ transition: color 0.13s linear; color: var(--heimu-color); text-shadow: none; } span.heimu:hover, span.heimu:active{ color: var(--heimu-text-color); } span.heimu:hover a, a:hover span.heimu{ color: var(--heimu-link-color); } span.heimu:hover a:visited, a:visited:hover span.heimu{ color: var(--heimu-visited-link-color); } span.heimu:hover a.new, a.new:hover span.heimu{ color: var(--heimu-new-link-color); } span.heimu a.new:hover:visited, a.new:hover:visited span.heimu{ color: var(--heimu-new-visited-link-color); } span.heimu:hover a.extiw:visited, a.extiw:visited:hover span.heimu{ color: var(--heimu-extiw-visited-link-color); } [color-mode="dark"] .heimu, [color-mode="dark"] .heimu rt{ --heimu-color: #5e6272; } /* 彩幕效果 */ .colormu-drk { color: #FFF; } .colormu-bri { color: #000; } .colormu-drk:not(.colormu_toggle_on) a { color: #add8e6; } .colormu-drk:not(.colormu_toggle_on) a.new { color: #FCC; } .colormu>span, .colormu a, .colormu a>span { transition: color 0.2s; } .colormu:not(:hover):not(:active):not(.colormu_toggle_on)>span, .colormu:not(:hover):not(:active):not(.colormu_toggle_on) a { color: transparent; } .colormu:not(:hover):not(:active):not(.colormu_toggle_on) a>span { color: transparent !important; } a .colormu-bri { color: inherit; } a:hover .colormu>span, a:active .colormu>span, .colormu-drk.colormu_toggle_on, .colormu_toggle_on>span, .colormu-drk.colormu_toggle_on a>span { color: inherit !important; } /* 表格样式 - 调整 */ table { border: 1px solid #ccc; /* 更清晰的边框 */ background-color: rgba(248, 249, 250, 0.9); box-shadow: 1px 1px 4px rgba(0, 0, 0, 0.07); border-radius: 3px; margin: 1.2em 0; } table th { background: linear-gradient(to bottom, #f5f6f7, var(--custom-table-header-background)); color: #333; font-family: var(--UI-font); font-weight: 600; /* 加粗表头 */ text-shadow: 0 1px 1px rgba(255, 255, 255, 0.5), var(--crt-text-shadow); padding: 10px 14px; /* 增加内边距 */ } table td, table th { border: 1px solid #d8d9da; padding: 8px 12px; /* 调整单元格内边距 */ transition: background-color 0.2s ease; font-size: calc(var(--base-font-size) * 0.95); /* 调整表格字体 */ } table tr:nth-child(even) td { background-color: rgba(240, 241, 242, 0.7); } table tr:hover td { background-color: rgba(0, 255, 100, 0.08); /* 调整悬停背景色 */ } /* 代码样式 - 调整 */ pre, code { font-family: var(--pixel-font); font-size: calc(var(--base-font-size) * var(--code-scale)); background-color: rgba(240, 240, 240, 0.8); /* 代码背景 */ border: 1px solid #d0d0d0; padding: 0.3em 0.5em; text-shadow: none; /* 代码块移除辉光 */ border-radius: 3px; color: #1a1a1a; } pre { padding: 1em; overflow-x: auto; background-color: rgba(235, 237, 240, 0.85); box-shadow: inset 0 1px 3px rgba(0,0,0,0.1); } pre::before { content: none; } /* 移除之前的CODE标签 */ /* 确保文本内容在荧光字体下清晰可读 */ p, li, td, th, figcaption, blockquote, cite { /* font-family 已在body设置 */ /* font-size 已在body或table设置 */ line-height: 1.65; letter-spacing: 0.01em; /* 轻微调整字间距 */ position: relative; text-shadow: var(--crt-text-shadow); /* 对大部分文本应用辉光 */ } /* 图片效果 - 微调 */ img { max-width: 100%; height: auto; transition: all 0.25s ease; border-radius: 3px; border: 1px solid rgba(0, 0, 0, 0.1); box-shadow: 0 1px 3px rgba(0,0,0,0.05); } img:hover { box-shadow: 0 2px 6px rgba(0, 0, 0, 0.1), 0 0 8px var(--crt-glow-color); /* 调整悬停辉光 */ transform: scale(1.015); border-color: rgba(0, 255, 100, 0.3); } /* 滚动条样式 - 增加质感 */ ::-webkit-scrollbar { width: 12px; height: 12px; } ::-webkit-scrollbar-track { background: rgba(0, 0, 0, 0.04); border-radius: 6px; box-shadow: inset 0 0 3px rgba(0,0,0,0.1); } ::-webkit-scrollbar-thumb { background: linear-gradient(to bottom, #aaa, #888); border-radius: 6px; border: 1px solid rgba(0, 0, 0, 0.15); box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.3); } ::-webkit-scrollbar-thumb:hover { background: linear-gradient(to bottom, #bbb, #999); } /* 修复扫描线显示问题 (已在body::after中实现) */ @media screen { /* 移除之前的body .scanlines规则 */ body .scanlines { display: none; } } /* 打印样式覆盖 - 保持不变 */ @media print { :root { --scanlines-display: none; } body::before, body::after, body .scanlines { display: none !important; } * { text-shadow: none !important; box-shadow: none !important; animation: none !important; } body, p, li, td, th { font-family: serif !important; } h1, h2, h3, h4, h5, h6 { font-family: sans-serif !important; font-weight: bold !important; } a { color: #000 !important; text-decoration: underline !important; } html { background: none !important; } body { background: #fff !important; box-shadow: none !important; } } /* 移除之前的额外扫描线 DOM 元素 body::after */ /* (注意:上面的body::after已经重新定义为扫描线,所以这个注释提醒移除重复定义,但实际修改是替换) */ /* 移除之前添加的语言特定字体大小规则 */ :lang(zh), :lang(zh-CN), :lang(zh-TW), :lang(zh-HK) { font-size: inherit; /* 恢复继承 */ } /* 媒体查询,适应不同设备 - 调整基础字号 */ @media screen and (max-width: 768px) { :root { --base-font-size: 14px; } body { padding: 1rem; margin: 0.5rem; } } @media screen and (min-width: 1440px) { :root { --base-font-size: 16px; /* 在大屏幕上稍微增大 */ } } /* 边栏样式 - 重新设计 */ .side-block { /* 假设这是边栏容器 */ --sideblock-heading-border-color: var(--custom-border-green); --sideblock-heading-text-color: #111; background: linear-gradient(to bottom, rgba(225, 235, 245, 0.85), rgba(200, 215, 230, 0.9)); border: 1px solid rgba(0, 0, 0, 0.2); border-radius: 4px; margin: 0.5rem 0.5rem 1rem 0; padding: 0.5rem; box-shadow: 1px 1px 4px rgba(0, 0, 0, 0.1), inset 0 0 15px rgba(0, 200, 255, 0.05); font-family: var(--UI-font); } .side-block .heading { font-family: var(--title-font); font-size: calc(var(--base-font-size) * 1); /* 调整边栏标题大小 */ color: var(--sideblock-heading-text-color); text-shadow: 0 1px 1px rgba(255, 255, 255, 0.4), var(--crt-text-shadow); padding: 0.4rem 0.6rem; margin: -0.5rem -0.5rem 0.5rem -0.5rem; /* 使其贴合容器顶部 */ border-bottom: 1px solid rgba(0, 0, 0, 0.15); background: linear-gradient(to bottom, #e8f0f8, #d8e2f0); border-top-left-radius: 3px; border-top-right-radius: 3px; letter-spacing: 0.05em; } .side-block .heading p { /* 如果标题在p标签里 */ margin: 0; padding: 0; } .side-block div.menu-item { margin: 0 -0.5rem; /* 左右贴合容器 */ border-bottom: 1px solid rgba(0, 0, 0, 0.08); } .side-block div.menu-item:last-child { border-bottom: none; } .side-block div.menu-item a { display: block; padding: 0.5rem 1rem; color: var(--link-color); text-decoration: none; font-size: calc(var(--base-font-size) * 0.95); transition: background-color 0.2s ease, color 0.2s ease; text-shadow: 0 0 2px rgba(0, 100, 255, 0.1); } .side-block div.menu-item a:hover { background-color: rgba(0, 150, 255, 0.1); color: var(--link-color-active); text-shadow: 0 0 5px rgba(0, 150, 255, 0.3); } /* 移除hovers库样式 - 如果不再需要 */ [class*='hovers-'] { /* 可以保留需要的,或完全移除 */ /* display: none; */ }
Loading comments...