Minecraft Wiki/styles.css
更多操作
/* =========================================================
Minecraft Wiki 首页样式 适配 Vector (wgl) 与 Citizen 皮肤 依赖 MediaWiki:Common.css 中的 CSS 变量 ========================================================= */
/* ---------------------------------------------------------
整体布局 --------------------------------------------------------- */
.mp-wrapper {
box-sizing: border-box;
}
.mp-inline-sections {
display: flex; flex-wrap: wrap; gap: 12px; align-items: flex-start;
}
.mp-left {
flex: 2 1 480px; min-width: 0; display: flex; flex-direction: column; gap: 8px;
}
.mp-right {
flex: 1 1 280px; min-width: 0; display: flex; flex-direction: column; gap: 8px;
}
/* ---------------------------------------------------------
通用 section 卡片 --------------------------------------------------------- */
.mp-section {
background-color: var(--custom-main-page-background); border: 1px solid var(--custom-main-page-border); border-radius: 4px; padding: 12px 14px; box-sizing: border-box;
}
.mp-title {
font-size: 1.1em; font-weight: bold; margin: 0 0 8px 0; padding: 0 0 6px 0; border-bottom: 1px solid var(--custom-main-page-border); color: var(--color-emphasized);
}
/* ---------------------------------------------------------
更新高亮卡片 --------------------------------------------------------- */
.mp-highlight-wrapper {
display: flex; flex-wrap: wrap; gap: 8px;
}
.mp-highlight {
position: relative; flex: 1 1 240px; min-height: 160px; border-radius: 4px; overflow: hidden; border: 1px solid var(--custom-main-page-border); display: flex; flex-direction: column; justify-content: space-between; background-color: var(--custom-main-page-background);
}
.mp-highlight-image {
position: absolute; inset: 0; z-index: 0; overflow: hidden;
}
.mp-highlight-image img {
width: 100%; height: 100%; object-fit: cover; object-position: center top; display: block;
}
/* 亮色/暗色图片切换 */ .mp-light-only {
display: block;
} .mp-dark-only {
display: none;
}
body.wgl-theme-dark .mp-light-only, html[data-mw-skin-citizen-theme="dark"] .mp-light-only {
display: none;
} body.wgl-theme-dark .mp-dark-only, html[data-mw-skin-citizen-theme="dark"] .mp-dark-only {
display: block;
}
.mp-highlight-top-description {
position: relative; z-index: 1; padding: 10px 12px 6px; background: linear-gradient(to bottom, rgba(0,0,0,0.55) 0%, rgba(0,0,0,0) 100%);
}
.mp-highlight-top-description .mp-title {
color: #fff; border-bottom-color: rgba(255,255,255,0.3); text-shadow: 0 1px 3px rgba(0,0,0,0.8); margin-bottom: 4px;
}
.mp-highlight-top-description .hlist {
color: #f0f0f0; font-size: 0.9em; text-shadow: 0 1px 2px rgba(0,0,0,0.8);
}
.mp-highlight-top-description .hlist li::before {
color: rgba(255,255,255,0.6);
}
.mp-highlight-bottom-description {
position: relative; z-index: 1; padding: 6px 12px 10px; background: linear-gradient(to top, rgba(0,0,0,0.6) 0%, rgba(0,0,0,0) 100%); color: #f0f0f0; font-size: 0.85em; text-shadow: 0 1px 2px rgba(0,0,0,0.8);
}
.mp-highlight-version {
font-weight: bold; color: #fff;
}
/* ---------------------------------------------------------
按钮 --------------------------------------------------------- */
.mp-button-wrapper {
display: flex; flex-wrap: wrap; gap: 6px;
}
.mp-button {
display: inline-flex; align-items: center; justify-content: center; padding: 6px 14px; border-radius: 3px; font-size: 0.9em; font-weight: 500; text-decoration: none !important; cursor: pointer; border: 1px solid var(--border-color-base); background-color: var(--background-color-interactive-subtle); color: var(--color-base); transition: background-color 0.1s, border-color 0.1s;
}
.mp-button:hover {
background-color: var(--background-color-interactive-subtle--hover); border-color: var(--border-color-interactive); color: var(--color-base);
}
.mp-button:active {
background-color: var(--background-color-interactive-subtle--active);
}
/* progressive 蓝色按钮 */ .mp-button-progressive {
background-color: var(--background-color-progressive); border-color: var(--background-color-progressive); color: var(--color-inverted-fixed) !important;
}
.mp-button-progressive:hover {
background-color: var(--background-color-progressive--hover); border-color: var(--background-color-progressive--hover); color: var(--color-inverted-fixed) !important;
}
.mp-button-progressive:active {
background-color: var(--background-color-progressive--active); border-color: var(--background-color-progressive--active);
}
/* 折叠版本按钮 */ .mp-button-collapsetoggle {
width: 100%; background-color: var(--background-color-interactive); border: 1px solid var(--border-color-base); border-radius: 3px; padding: 0; cursor: pointer;
}
.mp-button-collapsetoggle h4 {
margin: 0; padding: 7px 14px; font-size: 0.95em; font-weight: bold; color: var(--color-base);
}
.collapsible-versions-toggle::after {
content: " ▲"; font-size: 0.75em; position: absolute; right: 0; top: 50%; transform: translateY(-50%);
}
.collapsed .collapsible-versions-toggle::after {
content: " ▼";
}
.collapsible-content {
overflow: hidden;
}
.collapsed .collapsible-content {
display: none;
}
/* Herdcraft 特殊按钮图片 */ .mp-button-has-image {
gap: 6px;
}
/* ---------------------------------------------------------
平台版本列表 --------------------------------------------------------- */
.mp-platform-wrapper {
display: flex; flex-wrap: wrap; gap: 6px;
}
.mp-platform {
display: flex; align-items: center; gap: 6px; padding: 5px 10px; border: 1px solid var(--border-color-base); border-radius: 3px; background-color: var(--background-color-neutral-subtle); font-size: 0.85em; flex: 1 1 160px; min-width: 0;
}
.mp-platform-image {
width: 18px; height: 18px; flex-shrink: 0;
}
.mp-platform-image img {
width: 100%; height: 100%; object-fit: contain;
}
.mp-platform-title {
font-weight: 500; color: var(--color-base); white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.mp-platform-version {
margin-left: auto; font-size: 0.9em; color: var(--color-subtle); white-space: nowrap;
}
.mp-platform-snap .mp-platform-version, .mp-platform-preview .mp-platform-version, .mp-platform-beta .mp-platform-version {
color: var(--color-progressive);
}
/* ---------------------------------------------------------
图标网格 --------------------------------------------------------- */
.mp-icon-wrapper {
display: flex; flex-wrap: wrap; gap: 6px;
}
.mp-main-icons {
--icon-base-width: 80px;
}
.mp-icon {
display: flex; flex-direction: column; align-items: center; justify-content: flex-start; width: var(--icon-base-width, 80px); padding: 8px 4px 6px; border-radius: 4px; text-align: center; text-decoration: none !important; color: var(--color-base) !important; background-color: var(--background-color-interactive-subtle); border: 1px solid transparent; transition: background-color 0.1s, border-color 0.1s; font-size: 0.8em; line-height: 1.3; gap: 5px;
}
.mp-icon:hover {
background-color: var(--background-color-interactive-subtle--hover); border-color: var(--border-color-base); color: var(--color-base) !important; text-decoration: none !important;
}
.mp-icon-image {
width: 32px; height: 32px; flex-shrink: 0;
}
.mp-icon-image img {
width: 100%; height: 100%; object-fit: contain; image-rendering: pixelated;
}
.mp-icon-label {
word-break: break-all;
}
/* mod/工具图标稍宽 */ .mp-mod-icons .mp-icon {
width: var(--icon-base-width, 120px); flex-direction: row; justify-content: flex-start; text-align: left; padding: 6px 10px;
}
.mp-mod-icons .mp-icon-image {
width: 24px; height: 24px;
}
/* ---------------------------------------------------------
时间线(老玩家回坑) --------------------------------------------------------- */
.mp-timeline {
overflow-y: auto;
}
.mp-timeline dl {
margin: 0;
}
.mp-timeline dt {
font-weight: bold; margin-top: 8px; color: var(--color-base);
}
.mp-timeline dt:first-child {
margin-top: 0;
}
.mp-timeline dd {
margin: 0 0 0 1em; color: var(--color-subtle); font-size: 0.9em;
}
/* ---------------------------------------------------------
相关社区 --------------------------------------------------------- */
.mp-sticky {
font-size: 0.9em;
}
.mp-sticky ul {
margin: 4px 0 0 0; padding-left: 1.2em;
}
.mp-sticky li {
margin: 2px 0;
}
/* ---------------------------------------------------------
语言列表区域 --------------------------------------------------------- */
.mp-languages {
margin-top: 8px; font-size: 0.85em; color: var(--color-subtle);
}
/* ---------------------------------------------------------
响应式 --------------------------------------------------------- */
@media screen and (max-width: 800px) {
.mp-inline-sections {
flex-direction: column;
}
.mp-left,
.mp-right {
flex: 1 1 100%;
}
.mp-highlight-wrapper {
flex-direction: column;
}
.mp-highlight {
min-height: 140px;
}
.mp-main-icons {
--icon-base-width: 70px;
}
}
@media screen and (max-width: 480px) {
.mp-platform {
flex: 1 1 100%;
}
.mp-main-icons {
--icon-base-width: 60px;
}
.mp-icon-image {
width: 24px;
height: 24px;
}
}