MediaWiki:Common.css:修订间差异

MediaWiki界面页面
无编辑摘要
小无编辑摘要
 
(未显示同一用户的14个中间版本)
第1行: 第1行:
/* =====================================================
/* =====================================================
   星海市 Wiki — 全局样式
   星海市 Wiki — 全局样式
  -----------------------------------------------------
  目录
  1. 首页标题与标签隐藏
  2. 首页头图
  3. 通用裁切图片框
  4. 图标容器
  5. 按钮
  6. 首页顶部操作区(文A + …)移到左侧边栏
  7. 线路表格(其他页面共用)
   ===================================================== */
   ===================================================== */


/* =====================================================
/* =====================================================
   1. 首页标题与标签隐藏
   0. 主题色变量
  浅色为默认值,深色由 .skin-citizen-dark 覆盖
   ===================================================== */
   ===================================================== */


:root {
    --xh-card-bg:      #ffffff;
    --xh-card-bg-soft:  #fbfefe;
    --xh-cover-bg:      #f3f4f6;
    --xh-border:        #e5e7eb;
    --xh-border-light:  #f3f4f6;
    --xh-border-inner:  #f0f0f0;
    --xh-text-strong:  #111827;
    --xh-text:          #4b5563;
    --xh-text-soft:    #6b7280;
    --xh-text-faint:    #9ca3af;
    --xh-header-bar-bg: #111827;
    --xh-float-bg:      rgba(255, 255, 255, 0.92);
}
/* ---- 深色模式(Citizen 皮肤)---- */
.skin-citizen-dark {
    --xh-card-bg:      #1e242c;
    --xh-card-bg-soft:  #18232a;
    --xh-cover-bg:      #2a3038;
    --xh-border:        #2d3540;
    --xh-border-light:  #2d3540;
    --xh-border-inner:  #2d3540;
    --xh-text-strong:  #e8eaed;
    --xh-text:          #b8bfc8;
    --xh-text-soft:    #9aa0a6;
    --xh-text-faint:    #80868b;
    --xh-header-bar-bg: #2d3540;
    --xh-float-bg:      rgba(30, 36, 44, 0.94);
}
/* -----------------------------------------------------
  1. 首页标题与标签隐藏
  ----------------------------------------------------- */
.page-首页 #p-namespaces,
.page-首页 #p-namespaces,
.page-首页 #p-associated-pages,
.page-首页 #p-associated-pages,
.page-首页 #p-views,
.page-首页 #p-views,
.page-首页 #p-cactions {
.page-首页 #p-cactions { display: none !important; }
    display: none !important;
}


.page-首页 #siteSub,
.page-首页 #siteSub,
.page-首页 .siteSub {
.page-首页 .siteSub { display: none !important; }
    display: none !important;
}


.page-首页 #firstHeading,
.page-首页 #firstHeading,
.page-首页 .firstHeading {
.page-首页 .firstHeading { display: none !important; }
    display: none !important;
}
 


/* =====================================================
/* -----------------------------------------------------
   2. 首页头图
   2. 首页头图
   ===================================================== */
   ----------------------------------------------------- */
 
.xh-banner {
.xh-banner {
     position: relative;
     position: relative;
第45行: 第62行:
     overflow: hidden;
     overflow: hidden;
     margin-bottom: 1rem;
     margin-bottom: 1rem;
     background-image: url('https://www.xhcity.top/w/images/xhcity/a/a3/XHSBANNER.png');
     background-image: url('https://www.xhcity.top/w/images/xhcity/9/9d/XHSBANNER.webp');
     background-size: cover;
     background-size: cover;
     background-position: center;
     background-position: center;
第54行: 第71行:
.xh-banner-text {
.xh-banner-text {
     position: absolute;
     position: absolute;
     left: 2rem;
     left: 2rem; bottom: 1.5rem; right: 2rem;
    bottom: 1.5rem;
    right: 2rem;
     color: white;
     color: white;
     text-shadow: 0 1px 6px rgba(0, 0, 0, 0.65);
     text-shadow: 0 1px 6px rgba(0, 0, 0, 0.65);
}
}
.xh-banner-text .sub {
.xh-banner-text .sub {
     font-size: 0.7rem;
     font-size: 0.7rem; letter-spacing: 0.22em;
    letter-spacing: 0.22em;
     text-transform: uppercase; opacity: 0.85;
     text-transform: uppercase;
    opacity: 0.85;
     margin-bottom: 0.4rem;
     margin-bottom: 0.4rem;
}
}
.xh-banner-text .title {
.xh-banner-text .title {
     font-size: 2.2rem;
     font-size: 2.2rem; font-weight: 800;
    font-weight: 800;
     line-height: 1.1; letter-spacing: -0.02em;
     line-height: 1.1;
    letter-spacing: -0.02em;
}
}
.xh-banner-text .desc {
.xh-banner-text .desc {
     font-size: 0.88rem;
     font-size: 0.88rem; opacity: 0.88; margin-top: 0.45rem;
    opacity: 0.88;
    margin-top: 0.45rem;
}
}


 
/* -----------------------------------------------------
/* =====================================================
   3. 通用裁切图片框
   3. 通用裁切图片框
   ===================================================== */
   ----------------------------------------------------- */
 
.xh-cover-bg {
.xh-cover-bg {
     overflow: hidden;
     overflow: hidden;
     border-radius: 4px;
     border-radius: 4px;
     background-color: #f3f4f6;
     background-color: var(--xh-cover-bg);
     background-size: cover;
     background-size: cover;
     background-position: center;
     background-position: center;
第93行: 第100行:
     line-height: 0;
     line-height: 0;
}
}
.xh-cover-169 { aspect-ratio: 16 / 9; }
.xh-cover-169 { aspect-ratio: 16 / 9; }
.xh-cover-32  { aspect-ratio: 3 / 2; }
.xh-cover-32  { aspect-ratio: 3 / 2; }
第99行: 第105行:
.xh-cover-11  { aspect-ratio: 1 / 1; }
.xh-cover-11  { aspect-ratio: 1 / 1; }


.xh-cover-rp      { background-image: url('https://www.xhcity.top/w/images/xhcity/1/1d/Rp_web.png'); }
.xh-cover-rp      { background-image: url('https://www.xhcity.top/w/images/xhcity/8/81/Rp_web.webp'); }
.xh-cover-terra  { background-image: url('https://www.xhcity.top/w/images/xhcity/4/43/Terra_mod.png'); }
.xh-cover-terra  { background-image: url('https://www.xhcity.top/w/images/xhcity/b/bb/Terra_mod.webp'); }
.xh-cover-g1      { background-image: url('https://www.xhcity.top/w/images/xhcity/0/06/G1.png'); }
.xh-cover-g1      { background-image: url('https://www.xhcity.top/w/images/xhcity/8/8c/G1.webp'); }
.xh-cover-g2      { background-image: url('https://www.xhcity.top/w/images/xhcity/8/85/G2.png'); }
.xh-cover-g2      { background-image: url('https://www.xhcity.top/w/images/xhcity/d/d0/G2.webp'); }
.xh-cover-g3      { background-image: url('https://www.xhcity.top/w/images/xhcity/4/45/G3.png'); }
.xh-cover-g3      { background-image: url('https://www.xhcity.top/w/images/xhcity/c/cd/G3.webp'); }
.xh-cover-g4      { background-image: url('https://www.xhcity.top/w/images/xhcity/3/30/G4.png'); }
.xh-cover-g4      { background-image: url('https://www.xhcity.top/w/images/xhcity/3/36/G4.webp'); }
.xh-cover-transit { background-image: url('https://www.xhcity.top/w/images/xhcity/9/96/Transit_pic.png'); }
.xh-cover-transit { background-image: url('https://www.xhcity.top/w/images/xhcity/9/95/Transit_pic.webp'); }
 


/* =====================================================
/* -----------------------------------------------------
   4. 图标容器
   4. 图标容器
   ===================================================== */
   ----------------------------------------------------- */
 
.xh-icon {
.xh-icon {
     display: block;
     display: block;
第122行: 第126行:
     line-height: 0;
     line-height: 0;
}
}
.xh-icon-player  { background-image: url('https://res.xhcity.top/other-resources/xhwiki/icon_player.svg'); }
.xh-icon-player  { background-image: url('https://res.xhcity.top/other-resources/xhwiki/icon_player.svg'); }
.xh-icon-rules    { background-image: url('https://res.xhcity.top/other-resources/xhwiki/icon_rules.svg'); }
.xh-icon-rules    { background-image: url('https://res.xhcity.top/other-resources/xhwiki/icon_rules.svg'); }
第130行: 第133行:
.xh-icon-station  { background-image: url('https://res.xhcity.top/other-resources/xhwiki/icon_station.svg'); }
.xh-icon-station  { background-image: url('https://res.xhcity.top/other-resources/xhwiki/icon_station.svg'); }
.xh-icon-lines    { background-image: url('https://res.xhcity.top/other-resources/xhwiki/icon_lines.svg'); }
.xh-icon-lines    { background-image: url('https://res.xhcity.top/other-resources/xhwiki/icon_lines.svg'); }
.xh-icon-construction { background-image: url('https://res.xhcity.top/other-resources/xhwiki/icon_construction.svg'); }
.xh-icon-construction { background-image: url('https://res.xhcity.top/other-resources/xhwiki/icon_construction.svg'); }
.xh-icon-bids        { background-image: url('https://res.xhcity.top/other-resources/xhwiki/icon_bids.svg'); }
.xh-icon-bids        { background-image: url('https://res.xhcity.top/other-resources/xhwiki/icon_bids.svg'); }
.xh-icon-div          { background-image: url('https://res.xhcity.top/other-resources/xhwiki/icon_div.svg'); }
.xh-icon-div          { background-image: url('https://res.xhcity.top/other-resources/xhwiki/icon_div.svg'); }
.xh-icon-dmap    { background-image: url('https://res.xhcity.top/other-resources/xhwiki/icon_dmap.svg'); }
.xh-icon-dmap    { background-image: url('https://res.xhcity.top/other-resources/xhwiki/icon_dmap.svg'); }
.xh-icon-sysmap  { background-image: url('https://res.xhcity.top/other-resources/xhwiki/icon_sysmap.svg'); }
.xh-icon-sysmap  { background-image: url('https://res.xhcity.top/other-resources/xhwiki/icon_sysmap.svg'); }
第140行: 第141行:
.xh-icon-verify  { background-image: url('https://res.xhcity.top/other-resources/xhwiki/icon_verify.svg'); }
.xh-icon-verify  { background-image: url('https://res.xhcity.top/other-resources/xhwiki/icon_verify.svg'); }
.xh-icon-reset  { background-image: url('https://res.xhcity.top/other-resources/xhwiki/icon_reset.svg'); }
.xh-icon-reset  { background-image: url('https://res.xhcity.top/other-resources/xhwiki/icon_reset.svg'); }
/* ---- 深色模式下把图标翻成白色 ---- */
.skin-citizen-dark .xh-icon {
    filter: brightness(0) invert(1) opacity(0.85);
}


 
/* -----------------------------------------------------
/* =====================================================
   5. 按钮
   5. 按钮
   ===================================================== */
   ----------------------------------------------------- */
 
.xh-random-btn {
.xh-random-btn {
     display: inline-block;
     display: inline-block;
第170行: 第173行:
}
}


 
/* -----------------------------------------------------
/* =====================================================
   6. 首页顶部操作区右上角悬浮
   6. 首页顶部操作区(文A + …)移到左侧边栏
   ----------------------------------------------------- */
   Citizen 皮肤结构:
  .page-actions
    ├── .citizen-languages          (文A)
    └── .citizen-page-actions      (… 更多)
  把整条 .page-actions 从顶部挪到左侧栏底部,
  变成竖排图标。想取消这个效果,整段删掉即可。
  ===================================================== */
 
.page-首页 .page-actions {
.page-首页 .page-actions {
     position: fixed !important;
     position: fixed !important;
     top: auto !important;
     top: 0.75rem;
     right: auto !important;
     right: 0.75rem;
     left: 0.3rem;             /* 侧栏水平位置,可微调 */
     left: auto !important;
     bottom: 5rem;             /* 底部距离,顶在用户头像上方 */
     bottom: auto !important;
     z-index: 200;
     z-index: 9999;
     display: flex !important;
     display: flex !important;
     flex-direction: column !important;
     flex-direction: row !important;
     align-items: center;
     align-items: center;
     gap: 0.4rem;
     gap: 0.4rem;
     width: auto !important;
     width: auto !important;
     padding: 0 !important;
     padding: 0.3rem 0.55rem !important;
     margin: 0 !important;
     margin: 0 !important;
     background: transparent !important;
     background: var(--xh-float-bg);
     box-shadow: none !important;
    border-radius: 8px;
     border: none !important;
     box-shadow: 0 2px 10px rgba(0, 0, 0, 0.18);
     backdrop-filter: blur(4px);
}
}
/* 让 header 不再为被挪走的操作区预留空间 */
.page-首页 .mw-body-header {
.page-首页 .mw-body-header {
     padding-top: 0 !important;
     padding-top: 0 !important;
第210行: 第204行:
}
}


 
/* -----------------------------------------------------
/* =====================================================
   7. 线路表格
   7. 线路表格
   ===================================================== */
   ----------------------------------------------------- */
 
.wikitable-routes tr th,
.wikitable-routes tr th,
.wikitable-routes tr td {
.wikitable-routes tr td {
第220行: 第212行:
     padding: 5px 10px 5px 0 !important;
     padding: 5px 10px 5px 0 !important;
}
}
.wikitable-routes tr td:first-child {
.wikitable-routes tr td:first-child { border-right: 10px solid white; }
    border-right: 10px solid white;
.wikitable-routes tr td:only-child { background-color: #f5f5f5 !important; }
.wikitable-routes tr th { background-color: #eee !important; }
/* =====================================================
  深色 / 浅色切换渐变
  ===================================================== */
 
/* 页面底色:只作用于 body,避免和 html 打架 */
body {
    transition: background-color 0.35s ease;
}
}
.wikitable-routes tr td:only-child {
 
     background-color: #f5f5f5 !important;
/* 首页内部的容器:只过渡背景和边框 */
}
:where(.page-首页 *) {
.wikitable-routes tr th {
     transition:
    background-color: #eee !important;
        background-color 0.35s ease,
        border-color     0.35s ease;
}
}

2026年9月24日 (四) 13:01的最新版本

/* =====================================================
   星海市 Wiki — 全局样式
   ===================================================== */

/* =====================================================
   0. 主题色变量
   浅色为默认值,深色由 .skin-citizen-dark 覆盖
   ===================================================== */

:root {
    --xh-card-bg:       #ffffff;
    --xh-card-bg-soft:  #fbfefe;
    --xh-cover-bg:      #f3f4f6;
    --xh-border:        #e5e7eb;
    --xh-border-light:  #f3f4f6;
    --xh-border-inner:  #f0f0f0;
    --xh-text-strong:   #111827;
    --xh-text:          #4b5563;
    --xh-text-soft:     #6b7280;
    --xh-text-faint:    #9ca3af;
    --xh-header-bar-bg: #111827;
    --xh-float-bg:      rgba(255, 255, 255, 0.92);
}

/* ---- 深色模式(Citizen 皮肤)---- */
.skin-citizen-dark {
    --xh-card-bg:       #1e242c;
    --xh-card-bg-soft:  #18232a;
    --xh-cover-bg:      #2a3038;
    --xh-border:        #2d3540;
    --xh-border-light:  #2d3540;
    --xh-border-inner:  #2d3540;
    --xh-text-strong:   #e8eaed;
    --xh-text:          #b8bfc8;
    --xh-text-soft:     #9aa0a6;
    --xh-text-faint:    #80868b;
    --xh-header-bar-bg: #2d3540;
    --xh-float-bg:      rgba(30, 36, 44, 0.94);
}

/* -----------------------------------------------------
   1. 首页标题与标签隐藏
   ----------------------------------------------------- */
.page-首页 #p-namespaces,
.page-首页 #p-associated-pages,
.page-首页 #p-views,
.page-首页 #p-cactions { display: none !important; }

.page-首页 #siteSub,
.page-首页 .siteSub { display: none !important; }

.page-首页 #firstHeading,
.page-首页 .firstHeading { display: none !important; }

/* -----------------------------------------------------
   2. 首页头图
   ----------------------------------------------------- */
.xh-banner {
    position: relative;
    height: 260px;
    border-radius: 6px;
    overflow: hidden;
    margin-bottom: 1rem;
    background-image: url('https://www.xhcity.top/w/images/xhcity/9/9d/XHSBANNER.webp');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    background-color: #0f8f87;
}

.xh-banner-text {
    position: absolute;
    left: 2rem; bottom: 1.5rem; right: 2rem;
    color: white;
    text-shadow: 0 1px 6px rgba(0, 0, 0, 0.65);
}
.xh-banner-text .sub {
    font-size: 0.7rem; letter-spacing: 0.22em;
    text-transform: uppercase; opacity: 0.85;
    margin-bottom: 0.4rem;
}
.xh-banner-text .title {
    font-size: 2.2rem; font-weight: 800;
    line-height: 1.1; letter-spacing: -0.02em;
}
.xh-banner-text .desc {
    font-size: 0.88rem; opacity: 0.88; margin-top: 0.45rem;
}

/* -----------------------------------------------------
   3. 通用裁切图片框
   ----------------------------------------------------- */
.xh-cover-bg {
    overflow: hidden;
    border-radius: 4px;
    background-color: var(--xh-cover-bg);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    line-height: 0;
}
.xh-cover-169 { aspect-ratio: 16 / 9; }
.xh-cover-32  { aspect-ratio: 3 / 2; }
.xh-cover-43  { aspect-ratio: 4 / 3; }
.xh-cover-11  { aspect-ratio: 1 / 1; }

.xh-cover-rp      { background-image: url('https://www.xhcity.top/w/images/xhcity/8/81/Rp_web.webp'); }
.xh-cover-terra   { background-image: url('https://www.xhcity.top/w/images/xhcity/b/bb/Terra_mod.webp'); }
.xh-cover-g1      { background-image: url('https://www.xhcity.top/w/images/xhcity/8/8c/G1.webp'); }
.xh-cover-g2      { background-image: url('https://www.xhcity.top/w/images/xhcity/d/d0/G2.webp'); }
.xh-cover-g3      { background-image: url('https://www.xhcity.top/w/images/xhcity/c/cd/G3.webp'); }
.xh-cover-g4      { background-image: url('https://www.xhcity.top/w/images/xhcity/3/36/G4.webp'); }
.xh-cover-transit { background-image: url('https://www.xhcity.top/w/images/xhcity/9/95/Transit_pic.webp'); }

/* -----------------------------------------------------
   4. 图标容器
   ----------------------------------------------------- */
.xh-icon {
    display: block;
    width: 56px;
    height: 56px;
    margin: 0 auto 0.45rem;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    line-height: 0;
}
.xh-icon-player   { background-image: url('https://res.xhcity.top/other-resources/xhwiki/icon_player.svg'); }
.xh-icon-rules    { background-image: url('https://res.xhcity.top/other-resources/xhwiki/icon_rules.svg'); }
.xh-icon-approve  { background-image: url('https://res.xhcity.top/other-resources/xhwiki/icon_approve.svg'); }
.xh-icon-feedback { background-image: url('https://res.xhcity.top/other-resources/xhwiki/icon_feedback.svg'); }
.xh-icon-road     { background-image: url('https://res.xhcity.top/other-resources/xhwiki/icon_road.svg'); }
.xh-icon-station  { background-image: url('https://res.xhcity.top/other-resources/xhwiki/icon_station.svg'); }
.xh-icon-lines    { background-image: url('https://res.xhcity.top/other-resources/xhwiki/icon_lines.svg'); }
.xh-icon-construction { background-image: url('https://res.xhcity.top/other-resources/xhwiki/icon_construction.svg'); }
.xh-icon-bids         { background-image: url('https://res.xhcity.top/other-resources/xhwiki/icon_bids.svg'); }
.xh-icon-div          { background-image: url('https://res.xhcity.top/other-resources/xhwiki/icon_div.svg'); }
.xh-icon-dmap    { background-image: url('https://res.xhcity.top/other-resources/xhwiki/icon_dmap.svg'); }
.xh-icon-sysmap  { background-image: url('https://res.xhcity.top/other-resources/xhwiki/icon_sysmap.svg'); }
.xh-icon-custom  { background-image: url('https://res.xhcity.top/other-resources/xhwiki/icon_custom.svg'); }
.xh-icon-verify  { background-image: url('https://res.xhcity.top/other-resources/xhwiki/icon_verify.svg'); }
.xh-icon-reset   { background-image: url('https://res.xhcity.top/other-resources/xhwiki/icon_reset.svg'); }
/* ---- 深色模式下把图标翻成白色 ---- */
.skin-citizen-dark .xh-icon {
    filter: brightness(0) invert(1) opacity(0.85);
}

/* -----------------------------------------------------
   5. 按钮
   ----------------------------------------------------- */
.xh-random-btn {
    display: inline-block;
    padding: 0.55em 1.2em;
    background: #17b3a8;
    border-radius: 6px;
    font-size: 0.84rem;
    font-weight: 600;
    color: #ffffff !important;
    text-decoration: none !important;
    white-space: nowrap;
    box-shadow: 0 2px 0 #0e8a80, 0 3px 8px rgba(23, 179, 168, 0.28);
    transition: background 0.15s ease, box-shadow 0.15s ease, transform 0.15s ease;
    cursor: pointer;
}
.xh-random-btn:hover {
    background: #15a89e;
    box-shadow: 0 2px 0 #0e8a80, 0 4px 12px rgba(23, 179, 168, 0.4);
    color: #ffffff !important;
}
.xh-random-btn:active {
    transform: translateY(2px);
    box-shadow: 0 0 0 #0e8a80, 0 1px 3px rgba(23, 179, 168, 0.3);
}

/* -----------------------------------------------------
   6. 首页顶部操作区右上角悬浮
   ----------------------------------------------------- */
.page-首页 .page-actions {
    position: fixed !important;
    top: 0.75rem;
    right: 0.75rem;
    left: auto !important;
    bottom: auto !important;
    z-index: 9999;
    display: flex !important;
    flex-direction: row !important;
    align-items: center;
    gap: 0.4rem;
    width: auto !important;
    padding: 0.3rem 0.55rem !important;
    margin: 0 !important;
    background: var(--xh-float-bg);
    border-radius: 8px;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.18);
    backdrop-filter: blur(4px);
}
.page-首页 .mw-body-header {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    min-height: 0 !important;
    border-bottom: none !important;
}

/* -----------------------------------------------------
   7. 线路表格
   ----------------------------------------------------- */
.wikitable-routes tr th,
.wikitable-routes tr td {
    font-size: 1rem !important;
    padding: 5px 10px 5px 0 !important;
}
.wikitable-routes tr td:first-child { border-right: 10px solid white; }
.wikitable-routes tr td:only-child { background-color: #f5f5f5 !important; }
.wikitable-routes tr th { background-color: #eee !important; }
/* =====================================================
   深色 / 浅色切换渐变
   ===================================================== */

/* 页面底色:只作用于 body,避免和 html 打架 */
body {
    transition: background-color 0.35s ease;
}

/* 首页内部的容器:只过渡背景和边框 */
:where(.page-首页 *) {
    transition:
        background-color 0.35s ease,
        border-color     0.35s ease;
}