打开/关闭菜单
打开/关闭外观设置菜单
打开/关闭个人菜单
未登录
未登录用户的IP地址会在进行任意编辑后公开展示。

MediaWiki:Common.css

MediaWiki界面页面
OnlyOTO留言 | 贡献2026年3月28日 (六) 04:00的版本

注意:在发布之后,您可能需要清除浏览器缓存才能看到所作出的更改的影响。

  • Firefox或Safari:按住Shift的同时单击刷新,或按Ctrl-F5Ctrl-R(Mac为⌘-R
  • Google Chrome:Ctrl-Shift-R(Mac为⌘-Shift-R
  • Edge:按住Ctrl的同时单击刷新,或按Ctrl-F5
/* 这里放置的CSS将应用于所有皮肤 */
/* 首页全局背景 - 移除页面前缀+防缓存 */
.huiji-css-hook{
    background-image: url(https://huiji-public.huijistatic.com/simmc/uploads/7/7a/TEST_BG.png) !important;
    background-attachment: fixed !important;
    background-size: cover !important;
    background-repeat: no-repeat !important;
    background-position-x: center !important;
    image-rendering: pixelated !important;
}
/* 输入框/选择框全局样式 */
input[type=text] {
	background: #221b0066 !important;
    color: #ffffff !important;
}
input, textarea, select, option{
	background: #221b0066 !important;
	color: #f6c628 !important;
}

/* 首页主体容器 - 移除页面前缀+修复bg色笔误(fbf2dc→fbf2db) */
#wiki-body {
  margin-top: 550px !important;
}
.huiji-css-hook #wiki-body {
    background-color: #fbf2db !important;
    color: #361d07 !important;
    border:4vmin solid transparent !important;
    border-radius: 4vmin !important;
    border-image:url(https://huiji-public.huijistatic.com/simmc/uploads/8/8a/HomePageBoarderImage.png) 170 round !important;
    padding-left: 0px !important;
    padding-right: 0px !important;
}
/* 搜索框样式 */
.oo-ui-textInputWidget {
    position: relative !important;
    vertical-align: middle !important;
    -moz-box-sizing: border-box !important;
    box-sizing: border-box !important;
    width: 60% !important;
    max-width: 50em !important;
}

/* 按钮样式 - 保留过渡动画+优化hover */
.mw-ui-button.mw-ui-progressive{
    background-color: #441f74 !important;
    color: #fff !important;
    border: 1px solid #996c4600 !important;
    text-shadow: 0 1px rgba(0,0,0,0.1) !important;
}
.mw-ui-button:not( :disabled ) {
    -webkit-transition: background-color 100ms,color 100ms,border-color 100ms,box-shadow 100ms !important;
    -moz-transition: background-color 100ms,color 100ms,border-color 100ms,box-shadow 100ms !important;
    transition: background-color 1000ms,color 1000ms,border-color 1000ms,box-shadow 1000ms !important;
}
.mw-ui-button.mw-ui-progressive:hover{
	background-color: #f6c628 !important;
	border: 1px solid #f6c628 !important;
}
.oo-ui-menuSelectWidget{
	background-color: #1c1c1c !important;
}

/* MC专属字体定义 */
@font-face {
    font-family: Minecraft !important;
    src: url('https://fs.huijiwiki.com/www/resources/font/Minecraft.ttf') !important;
}

/* 地图边框样式 */
.mc_map_border_top {
    float: left !important;
    width: 50vw !important;
    height: 2.5vw !important;
    background: url(https://huiji-public.huijistatic.com/simmc/uploads/0/0a/Bg_border_top.png) center center no-repeat !important;
    background-size: 100% 100% !important;
    margin-bottom: -1px !important;
}
.mc_map_border_left {
    float: left !important;
    width: 50vw !important;
    background: #fbf2db url(https://huiji-public.huijistatic.com/simmc/uploads/1/1f/Bg_border_left.png) left top repeat-y !important;
    background-size: 7.433% 8.849% !important;
    max-width: 100% !important;
}
.mc_map_border_foot {
    float: left !important;
    width: 50vw !important;
    height: 2.5vw !important;
    background: url(https://huiji-public.huijistatic.com/simmc/uploads/7/7f/Bg_border_foot.png) center center no-repeat !important;
    background-size: 100% 100% !important;
}
.mc_map_border_right {
    float: left !important;
    width: 50vw !important;
    background: url(https://huiji-public.huijistatic.com/simmc/uploads/f/fb/Bg_border_right.png) right top repeat-y !important;
    background-size: 7.433% 8.849% !important;
}
.wp {
    margin: 0 auto !important;
    width: 85% !important;
}

/* 遗迹场景动画样式 */
.relic-scene {
  position: relative !important;
  width: 100% !important;
  height: 400px !important;
  background: radial-gradient(ellipse at bottom, #1b2735 0%, #090a0f 100%) !important;
  overflow: hidden !important;
  perspective: 400px !important;
}
.stars-bg, .stars-bg::before, .stars-bg::after {
  content: "" !important;
  position: absolute !important;
  top: 0 !important;
  left: 50% !important;
  width: 1px !important;
  height: 1px !important;
  box-shadow: 
    -234px 179px 0 0 #FFF, 15px 339px 0 0 #FFF, 246px 299px 0 1px #FFF, 
    -154px 156px 0 0 #FFF, -174px 119px 0 0 #FFF, 194px 233px 0 1px #FFF, 
    -209px -158px 0 0 #FFF, 11px -20px 0 0 #FFF, 171px 253px 0 0 #FFF,
    300px -50px 0 0 #FFF, -100px 200px 0 1px #FFF, 50px -150px 0 0 #FFF !important;
  animation: animate-stars 150s linear infinite !important;
}
.stars-bg::before {
  box-shadow: 
    54px -19px 0 0 #FFF, -15px -39px 0 0 #FFF, -46px 99px 0 1px #FFF, 
    -4px 156px 0 0 #FFF, 174px -19px 0 0 #FFF, -94px 23px 0 1px #FFF !important;
  animation-duration: 100s !important;
}
.stars-bg::after {
  box-shadow: 
    -24px 19px 0 0 #FFF, 115px 39px 0 0 #FFF, 26px -99px 0 1px #FFF, 
    -14px -56px 0 0 #FFF, 74px -119px 0 0 #FFF, 94px -23px 0 1px #FFF !important;
  animation-duration: 200s !important;
}
@keyframes animate-stars {
  from {
    transform: translateY(0px) !important;
  }
  to {
    transform: translateY(-400px) !important;
  }
}
.relic-obelisk {
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  width: 50px !important;
  height: 200px !important;
  transform: translate(-50%, -50%) rotateX(60deg) rotateZ(45deg) !important;
  background: linear-gradient(0deg, #f0f0f0, #a0a0a0) !important;
  box-shadow: 0 0 30px 5px rgba(173, 216, 230, 0.5) !important;
  animation: pulse-relic 5s ease-in-out infinite !important;
}
.relic-obelisk:hover {
  animation-play-state: paused !important;
  box-shadow: 0 0 60px 20px rgba(255, 255, 100, 1) !important;
}
@keyframes pulse-relic {
  0% {
    transform: translate(-50%, -50%) rotateX(60deg) rotateZ(45deg) scale(1) !important;
    box-shadow: 0 0 30px 5px rgba(173, 216, 230, 0.5) !important;
  }
  50% {
    transform: translate(-50%, -50%) rotateX(60deg) rotateZ(45deg) scale(1.05) !important;
    box-shadow: 0 0 45px 10px rgba(173, 216, 230, 0.8) !important;
  }
  100% {
    transform: translate(-50%, -50%) rotateX(60deg) rotateZ(45deg) scale(1) !important;
    box-shadow: 0 0 30px 5px rgba(173, 216, 230, 0.5) !important;
  }
}
.foreground-fog {
  position: absolute !important;
  bottom: -150px !important;
  left: 0 !important;
  width: 100% !important;
  height: 300px !important;
  background: radial-gradient(circle, rgba(9,10,15,0.6) 30%, rgba(9,10,15,0) 70%) !important;
  border-radius: 50% !important;
  animation: drift-fog 12s ease-in-out infinite alternate !important;
}
@keyframes drift-fog {
  from {
    transform: translateX(-20px) scale(1.1) !important;
    opacity: 0.8 !important;
  }
  to {
    transform: translateX(20px) scale(1.3) !important;
    opacity: 0.9 !important;
  }
}
.title-container {
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  transform: translate(-50%, -50%) !important;
  width: 80% !important;
  text-align: center !important;
  z-index: 10 !important;
}
.scene-title-main {
  color: rgba(255, 255, 210, 0.9) !important;
  font-family: 'Times New Roman', serif !important;
  font-size: 2.8em !important;
  font-weight: bold !important;
  letter-spacing: 0.5em !important;
  text-transform: uppercase !important;
  margin: 0 !important;
  animation: stardust-fade-in 5s ease-out 1s forwards !important;
  opacity: 0 !important;
}
.scene-subtitle {
  color: rgba(200, 220, 255, 0.8) !important;
  font-family: sans-serif !important;
  font-size: 1.2em !important;
  line-height: 1.6 !important;
  margin-top: 20px !important;
  animation: stardust-fade-in 4s ease-out 4s forwards !important;
  opacity: 0 !important;
}
@keyframes stardust-fade-in {
  from {
    opacity: 0 !important;
    filter: blur(10px) !important;
    transform: translateY(20px) !important;
  }
  to {
    opacity: 1 !important;
    filter: blur(0) !important;
    transform: translateY(0) !important;
  }
}

/* 滚动容器样式 */
.scroll-container {
  height: 100vh !important;
  overflow-y: scroll !important;
  scroll-snap-type: y mandatory !important;
}
.scene-panel {
  height: 100vh !important;
  scroll-snap-align: start !important;
  position: relative !important;
}
.scene-panel .relic-scene {
  height: 100% !important;
}
.scroll-indicator {
  position: absolute !important;
  bottom: 20px !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  color: white !important;
  font-size: 2em !important;
  opacity: 0.7 !important;
  animation: bounce 2s infinite !important;
}
@keyframes bounce {
  0%, 20%, 50%, 80%, 100% {
    transform: translateX(-50%) translateY(0) !important;
  }
  40% {
    transform: translateX(-50%) translateY(-15px) !important;
  }
  60% {
    transform: translateX(-50%) translateY(-7px) !important;
  }
}
.content-panel {
  background: radial-gradient(ellipse at bottom, #1b2735 0%, #090a0f 100%) !important;
  padding: 40px !important;
  overflow-y: auto !important;
  color: #cdd3da !important;
  font-size: 1.1em !important;
  line-height: 1.7 !important;
  height: 100vh !important;
  scroll-snap-align: start !important;
  position: relative !important;
}
.main-article h1, .main-article h2, .main-article h3 {
  color: #ffffff !important;
  border-bottom: 2px solid #556677 !important;
  padding-bottom: 10px !important;
  margin-bottom: 20px !important;
}
.main-article .wikitable {
  background-color: rgba(27, 39, 53, 0.8) !important;
  border: 1px solid #556677 !important;
  color: #cdd3da !important;
}
.main-article .wikitable > tr > th, .main-article .wikitable > * > tr > th {
  background-color: rgba(9, 10, 15, 0.9) !important;
  color: #ffffff !important;
}

/* 书架组件样式 */
.bookshelf-component-wrapper {
    position: relative !important;
}
.bookshelf-component-wrapper .bookshelf {
    display: flex !important;
    align-items: flex-end !important;
    gap: 10px !important;
    width: 80vw !important;
    max-width: 900px !important;
    padding: 20px 20px 15px 20px !important;
    border-bottom: 10px solid #8d6e63 !important;
    box-sizing: border-box !important;
    overflow-x: auto !important;
    -ms-overflow-style: none !important;
    scrollbar-width: none !important;
}
.bookshelf-component-wrapper .bookshelf::-webkit-scrollbar {
    display: none !important;
}
.bookshelf-component-wrapper .book {
    position: relative !important;
    display: block !important;
    color: white !important;
    z-index: 1 !important;
    transition: transform 0.3s ease-out, z-index 0s 0.3s !important;
    cursor: pointer !important;
}
.bookshelf-component-wrapper .book:hover {
    transform: translateY(-15px) !important;
    z-index: 10 !important;
    transition: transform 0.3s ease-out, z-index 0s !important;
}
.bookshelf-component-wrapper .book-spine {
    width: 45px !important;
    height: 240px !important;
    background-color: #a1887f !important;
    border-radius: 4px 4px 0 0 !important;
    box-shadow: inset 3px 0 8px rgba(0, 0, 0, 0.2) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    writing-mode: vertical-rl !important;
    text-orientation: mixed !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    letter-spacing: 1px !important;
    text-shadow: 1px 1px 2px rgba(0,0,0,0.3) !important;
    transition: background-color 0.3s ease !important;
}
.bookshelf-component-wrapper .book-info {
    position: absolute !important;
    left: 100% !important;
    bottom: 20px !important;
    width: 250px !important;
    background-color: #fff !important;
    color: #424242 !important;
    padding: 20px !important;
    border-radius: 0 6px 6px 0 !important;
    box-shadow: 5px 5px 20px rgba(0,0,0,0.1) !important;
    border: 1px solid #eee !important;
    box-sizing: border-box !important;
    opacity: 0 !important;
    transform: translateX(-10px) !important;
    pointer-events: none !important;
    transition: opacity 0.3s ease-out 0.1s, transform 0.3s ease-out 0.1s !important;
}
.bookshelf-component-wrapper .book:hover .book-info {
    opacity: 1 !important;
    transform: translateX(0) !important;
}
.bookshelf-component-wrapper .book-info h3 {
    margin: 0 0 10px 0 !important;
    font-size: 1.1em !important;
    color: #37474f !important;
}
.bookshelf-component-wrapper .book-info p {
    margin: 0 !important;
    font-size: 0.9em !important;
    line-height: 1.6 !important;
}
/* 书架书脊配色 */
.bookshelf-component-wrapper .book:nth-child(1) .book-spine { background-color: #78909c !important; }
.bookshelf-component-wrapper .book:nth-child(2) .book-spine { background-color: #8d6e63 !important; }
.bookshelf-component-wrapper .book:nth-child(3) .book-spine { background-color: #66bb6a !important; }
.bookshelf-component-wrapper .book:nth-child(4) .book-spine { background-color: #5c6bc0 !important; }
.bookshelf-component-wrapper .book:nth-child(5) .book-spine { background-color: #f06292 !important; }
.bookshelf-component-wrapper .book:nth-child(6) .book-spine { background-color: #FFFAFA !important; }
.bookshelf-component-wrapper .book:nth-child(7) .book-spine { background-color: #FFE4C4 !important; }
.bookshelf-component-wrapper .book:nth-child(8) .book-spine { background-color: #6495ED !important; }
.bookshelf-component-wrapper .book:nth-child(9) .book-spine { background-color: #B0E0E6 !important; }
.bookshelf-component-wrapper .book:nth-child(10) .book-spine { background-color: #00FF7F !important; }
.bookshelf-component-wrapper .book:nth-child(11) .book-spine { background-color: #DEB887 !important; }
.bookshelf-component-wrapper .book:nth-child(12) .book-spine { background-color: #FF6347 !important; }
.bookshelf-component-wrapper .book:nth-child(13) .book-spine { background-color: #66bb6a !important; }
.bookshelf-component-wrapper .book:nth-child(14) .book-spine { background-color: #5c6bc0 !important; }
.bookshelf-component-wrapper .book:nth-child(15) .book-spine { background-color: #f06292 !important; }
/* 书架移动端适配 */
@media (max-width: 600px) {
    .bookshelf-component-wrapper .bookshelf {
        width: 100% !important;
        padding-left: 15px !important;
        padding-right: 15px !important;
        justify-content: flex-start !important;
        gap: 8px !important;
    }
    .bookshelf-component-wrapper .book-spine {
        width: 40px !important;
        height: 200px !important;
        font-size: 14px !important;
    }
    .bookshelf-component-wrapper .book:hover {
        transform: translateY(-10px) !important;
    }
    .bookshelf-component-wrapper .book-info {
        width: 200px !important;
        bottom: 10px !important;
        padding: 15px !important;
    }
    .bookshelf-component-wrapper .book-info h3 { font-size: 1em !important; }
    .bookshelf-component-wrapper .book-info p { font-size: 0.85em !important; }
}
/* 书架链接样式 */
.bookshelf-component-wrapper a:link {
    color: white !important;
}
.bookshelf-component-wrapper a:visited {
    color: lightgray !important;
}
.bookshelf-component-wrapper a:hover {
    color: #ffffff !important;
    text-decoration: underline !important;
}
.bookshelf-component-wrapper a.new {
    color: red !important;
}
.JieYueDengJi a:link {
    color: white !important;
}
.JieYueDengJi a:visited {
    color: white !important;
}
.JieYueDengJi a:hover {
    color: #ffffff !important;
}

/* 成人内容警告框 */
.adult-warning-container {
  display: block !important;
  cursor: pointer !important;
  border: 1px solid #d33 !important;
  background-color: #fff8f8 !important;
  text-align: center !important;
  padding: 2em !important;
  color: #333 !important;
  transition: all 0.2s ease-in-out !important;
}
.adult-warning-container:focus {
  outline: none !important;
}
.adult-warning-container .content-hidden {
  display: none !important;
}
.adult-warning-container:focus-within {
  border-color: transparent !important;
  background-color: transparent !important;
  padding: 0 !important;
  text-align: left !important;
}
.adult-warning-container:focus-within .warning-message {
  display: none !important;
}
.adult-warning-container:focus-within .content-hidden {
  display: block !important;
}

/* 分类云样式 */
.cat-cloud-item {
    display: inline-block !important;
    margin: 2px 5px !important;
    line-height: 1.6 !important;
    white-space: nowrap !important;
}
.cat-cloud-item.size-1 { font-size: 0.8em !important; color: #666 !important; }
.cat-cloud-item.size-2 { font-size: 1.0em !important; }
.cat-cloud-item.size-3 { font-size: 1.3em !important; }
.cat-cloud-item.size-4 { font-size: 1.6em !important; font-weight: bold !important; }
.cat-cloud-item.size-5 { font-size: 2.0em !important; font-weight: bold !important; }
.category-cloud-container a.external {
    background-image: none !important;
    padding-right: 0 !important;
}

/* 整块点击链接样式 */
.full-div-link {
  position: relative !important;
}
.full-div-link a::after {
  content: '' !important;
  position: absolute !important;
  top: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  left: 0 !important;
  z-index: 1 !important;
}

/* 公告栏链接样式 */
.a555b6elianjie a {
    color: #555b6e !important;
    text-decoration: none !important;
}
.a555b6elianjie a:hover {
    color:#a3a8d8 !important;
    text-decoration: underline !important;
}
.a555b6elianjie a:visited {
    color: #555b6e !important;
}

/* 2025竞赛框架样式 */
.full-bleed {
  margin-left: -50vw !important;
  margin-right: -50vw !important;
  padding: 3em 50vw !important;
  box-sizing: border-box !important;
}
.full-bleed-em {
  margin-left: -30000em !important;
  margin-right: -30000em !important;
  padding-left: 30000em !important;
  padding-right: 30000em !important;
  padding-top: 3em !important;
  padding-bottom: 3em !important;
}
#newbee-contest-wrapper {
    position: relative !important;
}
.section-full-bleed {
    width: 100vw !important;
    position: relative !important;
    left: 50% !important;
    right: 50% !important;
    margin-left: -50vw !important;
    margin-right: -50vw !important;
    box-sizing: border-box !important;
}
.newbee-full-bleed {
    margin-left: -50vw !important;
    margin-right: -50vw !important;
    padding: 4rem 50vw !important;
    box-sizing: border-box !important;
}
.newbee-header-bg {
    padding-top: 8rem !important;
    padding-bottom: 6rem !important;
    background: linear-gradient(to top, #eef2f5 0%, #f8f9fa 100%) !important;
    text-align: center !important;
}
.newbee-title-text {
    font-family: 'Noto Serif SC', serif !important;
    font-weight: 900 !important;
    font-size: 5rem !important;
    color: #333 !important;
    text-shadow: 2px 2px 4px rgba(0,0,0,0.1) !important;
    border: 5px solid #333 !important;
    padding: 0.5em 1em !important;
    display: inline-block !important;
    border-radius: 15px !important;
    background-color: rgba(255,255,255,0.5) !important;
}
.newbee-infobox {
    background-color: #ffffff !important;
    border: 1px solid #ddd !important;
    border-radius: 1rem !important;
    padding: 1.5em 2em !important;
    box-shadow: 0 0 0.25rem rgba(0, 0, 0, 0.1) !important;
    margin-bottom: 2rem !important;
}
.newbee-infobox h1, .newbee-infobox h2, .newbee-infobox h3 {
    font-family: 'Noto Serif SC', serif !important;
    font-weight: 700 !important;
    text-align: center !important;
    margin-top: 0 !important;
}
.newbee-tt-placeholder {
    font-family: 'Noto Serif SC', serif !important;
    font-size: 1.8em !important;
    font-weight: bold !important;
    color: #555 !important;
    margin-top: -3.5rem !important;
    margin-bottom: 1rem !important;
    background-color: #ffffff !important;
    padding: 0 0.5em !important;
    display: inline-block !important;
}
.history-card {
    border: 1px solid #e0e0e0 !important;
    padding: 1em !important;
    text-align: center !important;
    background: #fafafa !important;
    margin-bottom: 1.5em !important;
    border-radius: 8px !important;
    height: 100% !important;
}
.history-card-img-placeholder {
    height: 120px !important;
    background: #e9e9e9 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #999 !important;
    font-size: 1.2em !important;
    border-radius: 4px !important;
}
.history-card h3 { margin-top: 0.5em !important; font-weight: bold !important; }
.passport-card {
    background-color: #f9f9f9 !important;
    border: 1px solid #e5e5e5 !important;
    padding: 1.25rem !important;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.05) !important;
    border-radius: 8px !important;
    margin-bottom: 1rem !important;
    min-height: 100px !important;
    display: flex !important;
    align-items: center !important;
}
.container {
    max-width: 1140px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 15px !important;
    padding-right: 15px !important;
}
.hors { height: 5rem !important; }
.hor { height: 15rem !important; }