首页
最近更改
MediaWiki帮助
中文社区
模组
人物
团体
群聊
历史
外网社区
模组
发帖交流
论坛
聊天
博客
快捷访问
分类
文件列表
上传文件
用户列表
用户通知
礼物列表
随机页面
聊天中的在线用户
系统消息
讨论
查看源代码
查看历史
刷新
创建账号
登录
查看“︁MediaWiki:Common.css”︁的源代码
来自Age Of History 2 Chinese Wiki
←
Common.css
跳转至:
导航
、
搜索
因为以下原因,您没有权限编辑该页面:
您请求的操作仅限属于该用户组的用户执行:
用户
此页面为本wiki上的软件提供界面文本,并受到保护以防止滥用。 如欲修改所有wiki的翻译,请访问
translatewiki.net
上的MediaWiki本地化项目。
您无权编辑此CSS页面,因为编辑此页面可能会影响所有访问者。
您可以查看和复制此页面的源代码。
/* 基础变量和字体设置 */ :root { /* 从Wikidot Database New主题迁移的变量 */ --fade-in-delay: 0.1s; --theme-base: "black-highlighter"; --theme-id: "windows-xp"; --theme-name: "Windows XP"; /* 字体设置 - 使用Database主题的字体和Windows XP字体 */ --body-font: "VonwaonBitmap 16px", VT323, monospace; --header-font: "VonwaonBitmap 16px", VT323, monospace; --title-font: "VonwaonBitmap 16px", VT323, monospace; --mono-font: "VonwaonBitmap 16px", VT323, monospace; --pixel-font-16: 'VonwaonBitmap 16px', VT323, monospace; --pixel-font-12: 'VonwaonBitmap 12px', VT323, monospace; --base-font-size: 14px; /* 从1.2rem改为14px */ --text-shadow: 2px 2px #C9781E; /* 颜色方案 - Windows XP主题颜色 */ --white-monochrome: 255, 255, 255; --pale-gray-monochrome: 240, 240, 240; --light-gray-monochrome: 192, 192, 192; --gray-monochrome: 128, 128, 128; --black-monochrome: 0, 0, 0; /* XP系统蓝色 */ --xp-blue: 53, 165, 225; --xp-darker-blue: 0, 85, 170; /* XP系统绿色 */ --xp-green: 48, 131, 51; --xp-bright-green: 76, 169, 28; /* XP系统橙色 - 保留原主题色 */ --bright-accent: 229, 140, 36; --medium-accent: 180, 110, 28; --dark-accent: 140, 85, 22; --pale-accent: 229, 170, 112; /* 主题颜色 */ --swatch-background: var(--black-monochrome); --swatch-primary: var(--bright-accent); --swatch-primary-darker: var(--medium-accent); --swatch-primary-darkest: var(--black-monochrome); --swatch-text-dark: var(--bright-accent); --swatch-text-light: var(--white-monochrome); --swatch-important-text: var(--bright-accent); --swatch-menubg-color: var(--black-monochrome); --swatch-menubg-light-color: var(--dark-gray-monochrome); --swatch-menubg-medium-color: var(--medium-accent); --swatch-menubg-medium-dark-color: var(--gray-monochrome); --swatch-menubg-dark-color: var(--dark-gray-monochrome); --swatch-menubg-black-color: var(--black-monochrome); --swatch-menubg-hover-color: var(--black-monochrome); --swatch-menutxt-dark-color: var(--white-monochrome); --swatch-menutxt-light-color: var(--white-monochrome); --swatch-border-color: var(--bright-accent); --swatch-headerh1-color: var(--white-monochrome); --swatch-headerh2-color: var(--white-monochrome); --swatch-topmenu-border-color: var(--bright-accent); --swatch-topmenu-bg-color: var(--black-monochrome); /* 链接颜色 */ --link-color: rgb(var(--xp-blue)); --visited-link-color: rgb(var(--xp-darker-blue)); --hover-link-color: rgb(var(--bright-accent)); --sidebar-links-text: var(--swatch-menutxt-dark-color); --link-color-bright: var(--medium-accent); /* 评分模块颜色 */ --rating-module-button-color: var(--bright-accent); --rating-module-text-color: var(--white-monochrome); --rating-module-text-hover-color: var(--swatch-menutxt-light-color); /* XP风格窗口属性 */ --xp-window-border: 1px solid rgb(var(--bright-accent)); --xp-window-header: linear-gradient(to bottom, rgb(0, 132, 198), rgb(0, 102, 170)); --xp-window-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3); /* 其他 */ --gradient-header: var(--xp-window-header); --diagonal-stripes: none; } /* 应用全局字体和背景 */ body { font-family: var(--body-font) !important; font-size: var(--base-font-size) !important; line-height: 1.5 !important; background-color: rgb(var(--black-monochrome)); color: rgb(var(--swatch-text-dark)); background-image: url(""); background-size: cover; background-position: center; background-repeat: no-repeat; background-attachment: fixed !important; } /* 标题字体 */ h1, h2, h3, h4, h5, h6, #firstHeading { font-family: var(--title-font); color: rgb(var(--swatch-headerh1-color)); text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.8); } /* 链接样式 - 保留 > 符号 */ a { color: rgb(var(--xp-blue)); text-decoration: none; } a:visited { color: rgb(var(--xp-darker-blue)); } a:hover { color: rgb(var(--bright-accent)); text-decoration: underline; } a:hover::before { content: "> "; } /* 主内容区背景 */ #content { background-color: rgba(var(--white-monochrome), 0.9); position: relative; border-radius: 8px; border: var(--xp-window-border); box-shadow: var(--xp-window-shadow); margin: 10px; padding: 20px; } /* 修改扫描线动画 - 改为半透明灰色 */ .scan-animation { position: absolute; width: 100%; height: 100%; top: 0; left: 0; pointer-events: none; } /* 主扫描线 - 较宽较慢 - 修改为半透明灰色 */ .scan-animation::before { content: ""; position: absolute; width: 100%; height: 6px; top: 0; background: linear-gradient( to bottom, rgba(128, 128, 128, 0) 0%, rgba(128, 128, 128, 0.1) 20%, rgba(128, 128, 128, 0.2) 50%, rgba(128, 128, 128, 0.1) 80%, rgba(128, 128, 128, 0) 100% ); box-shadow: 0 0 8px rgba(128, 128, 128, 0.15), 0 0 15px rgba(128, 128, 128, 0.1); animation: scanMain 12s linear infinite; opacity: 0.4; } /* 副扫描线 - 中等速度 - 修改为半透明灰色 */ .scan-animation::after { content: ""; position: absolute; width: 100%; height: 3px; top: 0; background: linear-gradient( to bottom, rgba(128, 128, 128, 0) 0%, rgba(128, 128, 128, 0.3) 50%, rgba(128, 128, 128, 0) 100% ); box-shadow: 0 0 6px rgba(128, 128, 128, 0.2); animation: scanSecondary 7s linear infinite; animation-delay: -3s; opacity: 0.25; } /* 快速扫描线 - 细小快速 - 修改为半透明灰色 */ .scan-animation .fast-scan { position: absolute; width: 100%; height: 1px; top: 0; background: rgba(128, 128, 128, 0.6); box-shadow: 0 0 3px rgba(128, 128, 128, 0.3); animation: scanFast 3s linear infinite; animation-delay: -1.5s; opacity: 0.15; } /* 各个扫描线的动画 - 保持不变 */ @keyframes scanMain { 0% { top: -2rem; opacity: 0.6; } 50% { opacity: 0.3; } 100% { top: 100vh; opacity: 0.6; } } @keyframes scanSecondary { 0% { top: -1rem; opacity: 0.4; } 35% { opacity: 0.2; } 70% { opacity: 0.5; } 100% { top: 100vh; opacity: 0.4; } } @keyframes scanFast { 0% { top: -0.3rem; opacity: 0.3; } 50% { opacity: 0.6; } 100% { top: 100vh; opacity: 0.3; } } /* Windows XP风格窗口和控件 */ /* XP风格窗口标题栏通用样式 */ .xp-window { border: 1px solid #0055AA; border-radius: 8px 8px 0 0; box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3); margin-bottom: 15px; overflow: hidden; position: relative; } /* XP风格窗口标题栏 */ .xp-window-title { background: linear-gradient(to bottom, #0084C6, #0066AA); color: white; padding: 5px 10px; font-weight: bold; height: 25px; display: flex; align-items: center; justify-content: space-between; border-bottom: 1px solid #0044AA; } /* XP风格窗口标题文本 */ .xp-window-title-text { margin: 0; padding: 0; font-family: var(--title-font); font-size: 12px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; flex-grow: 1; } /* XP风格窗口内容 */ .xp-window-content { background-color: #F1F1F1; padding: 10px; color: #000000; font-family: var(--body-font); } /* XP风格窗口控制按钮容器 */ .xp-window-controls { display: flex; gap: 4px; } /* XP风格窗口按钮基础样式 */ .xp-window-button { width: 21px; height: 21px; display: flex; align-items: center; justify-content: center; border-radius: 3px; cursor: pointer; transition: background-color 0.1s; } /* XP风格窗口按钮 - 悬停状态 */ .xp-window-button:hover { background-color: rgba(255, 255, 255, 0.2); } /* XP风格窗口按钮 - 按下状态 */ .xp-window-button:active { background-color: rgba(0, 0, 0, 0.2); } /* XP风格窗口按钮图标 */ .xp-minimize::before, .xp-maximize::before, .xp-close::before { content: ""; display: block; width: 11px; height: 2px; background-color: white; } /* XP风格最小化按钮 */ .xp-minimize::before { transform: translateY(5px); } /* XP风格最大化按钮 */ .xp-maximize::before { width: 9px; height: 9px; border: 1px solid white; background-color: transparent; } /* XP风格关闭按钮 */ .xp-close { margin-left: 2px; } .xp-close::before { content: "×"; font-size: 16px; line-height: 1; font-weight: bold; width: auto; height: auto; background-color: transparent; } .xp-close:hover { background-color: #E81123; } /* 应用XP窗口样式到各种内容容器 */ /* 信息框样式 */ .infobox, .notaninfobox { background-color: #F1F1F1 !important; color: #000000 !important; border: 1px solid #0055AA !important; border-radius: 8px 8px 0 0 !important; box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3) !important; padding: 0 !important; margin: 1em 0 !important; font-family: var(--body-font) !important; overflow: hidden !important; position: relative !important; } .infobox th, .notaninfobox .infobox-title { background: linear-gradient(to bottom, #0084C6, #0066AA) !important; color: white !important; padding: 5px 10px !important; text-align: left !important; font-weight: bold !important; height: 25px !important; display: flex !important; align-items: center !important; justify-content: space-between !important; border-bottom: 1px solid #0044AA !important; } /* 信息框标题文本 */ .infobox th span, .notaninfobox .infobox-title span { flex-grow: 1 !important; } /* 添加XP窗口控制按钮到信息框 */ .infobox th::after, .notaninfobox .infobox-title::after { content: ""; display: flex; gap: 4px; align-items: center; } /* 信息框内容区域 */ .infobox td, .notaninfobox .infobox-content { background-color: #F1F1F1 !important; padding: 8px !important; color: #000000 !important; } /* 信息框内部行分隔 */ .infobox tr:not(:first-child) td { border-top: 1px solid #D1D1D1 !important; } /* 信息框内链接 */ .infobox a, .notaninfobox a { color: rgb(var(--xp-blue)) !important; } .infobox a:hover, .notaninfobox a:hover { color: rgb(var(--bright-accent)) !important; } /* 信息框的最小化和最大化状态 */ .infobox.minimized td, .notaninfobox.minimized .infobox-content, .infobox.minimized tbody, .notaninfobox.minimized .infobox-rows { display: none !important; } .infobox.maximized, .notaninfobox.maximized { position: fixed !important; top: 10% !important; left: 10% !important; width: 80% !important; height: 80% !important; z-index: 1000 !important; } /* 表格样式 - Windows XP风格 */ table.wiki-content-table { border-collapse: collapse !important; border: 1px solid #003C74 !important; margin: 1em 0 !important; background-color: #FFFFFF !important; box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3) !important; } table.wiki-content-table th { background: linear-gradient(to bottom, #E3EFFF, #CDE2FE) !important; color: #000000 !important; border: 1px solid #97B9E8 !important; padding: 5px 8px !important; font-weight: bold !important; text-align: left !important; } table.wiki-content-table td { border: 1px solid #D3DCE3 !important; padding: 5px 8px !important; background-color: #FFFFFF !important; } table.wiki-content-table tr:nth-child(even) td { background-color: #F0F6FF !important; } table.wiki-content-table tr:hover td { background-color: #E8F1FF !important; } /* 按钮样式 - Windows XP风格 */ .button, button, input[type="button"], input[type="submit"], input[type="reset"] { background: linear-gradient(to bottom, #F5F5F5, #E5E5E5) !important; border: 1px solid #999999 !important; border-radius: 3px !important; padding: 4px 10px !important; color: #000000 !important; font-family: var(--body-font) !important; font-size: 12px !important; cursor: pointer !important; box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.1) !important; } .button:hover, button:hover, input[type="button"]:hover, input[type="submit"]:hover, input[type="reset"]:hover { background: linear-gradient(to bottom, #FEFEFE, #ECECEC) !important; border-color: #666666 !important; } .button:active, button:active, input[type="button"]:active, input[type="submit"]:active, input[type="reset"]:active { background: #E0E0E0 !important; box-shadow: inset 1px 1px 2px rgba(0, 0, 0, 0.2) !important; } /* 导航框(查论编)样式迁移 - Windows XP风格 */ .navbox { background-color: #F1F1F1 !important; border: 1px solid #0055AA !important; border-radius: 8px 8px 0 0 !important; font-family: var(--body-font) !important; margin: 1em 0 !important; box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3) !important; overflow: hidden !important; position: relative !important; } .navbox-title, .navbox th { background: linear-gradient(to bottom, #0084C6, #0066AA) !important; color: white !important; padding: 5px 10px !important; text-align: center !important; height: 25px !important; display: flex !important; align-items: center !important; justify-content: space-between !important; border-bottom: 1px solid #0044AA !important; } /* 导航框标题文本 */ .navbox-title span { flex-grow: 1 !important; text-align: center !important; } /* 添加XP窗口控制按钮占位 */ .navbox-title::after { content: ""; display: inline-block; width: 63px; /* 3个按钮的宽度 */ } .navbox-group { background: linear-gradient(to bottom, #E3EFFF, #CDE2FE) !important; color: #000000 !important; font-weight: bold !important; padding: 4px 8px !important; border-right: 1px solid #97B9E8 !important; border-bottom: 1px solid #97B9E8 !important; text-align: right !important; } .navbox-list { background-color: #FFFFFF !important; color: #000000 !important; padding: 4px 8px !important; border-bottom: 1px solid #D3DCE3 !important; } .navbox-even { background-color: #F0F6FF !important; } .navbox a { color: rgb(var(--xp-blue)) !important; text-decoration: none !important; } .navbox a:hover { color: rgb(var(--bright-accent)) !important; text-decoration: underline !important; } .navbox a:hover::before { content: "> " !important; } /* 导航栏样式 - Windows XP风格 */ .navbar, .navbar.navbar-default, .navbar-light { background: linear-gradient(to bottom, #1F69DE, #015EEB) !important; border-bottom: 1px solid #123AA0 !important; padding: 0 !important; box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2) !important; } .navbar .navbar-brand, .navbar .nav-link, .navbar-light .navbar-nav .nav-link { color: white !important; font-family: var(--header-font) !important; padding: 8px 15px !important; position: relative !important; } .navbar .nav-link:hover, .navbar-light .navbar-nav .nav-link:hover { background-color: rgba(255, 255, 255, 0.2) !important; color: white !important; text-decoration: none !important; } /* 下拉菜单 */ .dropdown-menu { background-color: #FFFFFF !important; border: 1px solid #7B9EBD !important; border-radius: 3px !important; box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3) !important; padding: 2px !important; } .dropdown-item { color: #000000 !important; font-family: var(--body-font) !important; padding: 4px 8px !important; border-radius: 2px !important; } .dropdown-item:hover { background-color: #316AC5 !important; color: white !important; } /* 搜索框样式 - Windows XP风格 */ #searchInput, .form-control { background-color: white !important; border: 1px solid #7B9EBD !important; color: #000000 !important; font-family: var(--body-font) !important; padding: 4px 8px !important; border-radius: 2px !important; } #searchInput:focus, .form-control:focus { border-color: #5690D2 !important; box-shadow: 0 0 4px rgba(86, 144, 210, 0.5) !important; } /* 搜索按钮 */ #searchButton, .searchButton, input[type="submit"], input[type="button"], .mw-ui-button, button[name="go"], button[name="fulltext"], .mw-ui-button.mw-ui-progressive { background: linear-gradient(to bottom, #F5F5F5, #E5E5E5) !important; border: 1px solid #999999 !important; color: #000000 !important; font-family: var(--body-font) !important; padding: 4px 10px !important; cursor: pointer !important; border-radius: 3px !important; box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.1) !important; } #searchButton:hover, .searchButton:hover, input[type="submit"]:hover, input[type="button"]:hover, .mw-ui-button:hover, button[name="go"]:hover, button[name="fulltext"]:hover, .mw-ui-button.mw-ui-progressive:hover { background: linear-gradient(to bottom, #FEFEFE, #ECECEC) !important; border-color: #666666 !important; color: #000000 !important; } #searchButton:active, .searchButton:active, input[type="submit"]:active, input[type="button"]:active, .mw-ui-button:active, button[name="go"]:active, button[name="fulltext"]:active, .mw-ui-button.mw-ui-progressive:active { background: #E0E0E0 !important; box-shadow: inset 1px 1px 2px rgba(0, 0, 0, 0.2) !important; } /* 目录框样式 - Windows XP风格 */ #toc, .toc { background-color: #F1F1F1 !important; border: 1px solid #0055AA !important; border-radius: 8px 8px 0 0 !important; padding: 0 !important; font-family: var(--body-font) !important; box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3) !important; margin: 1em 0 !important; position: relative !important; overflow: hidden !important; } .toc .toctitle, #toc .toctitle { background: linear-gradient(to bottom, #0084C6, #0066AA) !important; color: white !important; text-align: left !important; padding: 5px 10px !important; margin: 0 !important; font-weight: bold !important; height: 25px !important; display: flex !important; align-items: center !important; justify-content: space-between !important; border-bottom: 1px solid #0044AA !important; } .toc .toctitle h2, #toc .toctitle h2 { color: white !important; font-size: 12px !important; margin: 0 !important; padding: 0 !important; text-shadow: none !important; flex-grow: 1 !important; } /* 添加XP窗口控制按钮占位 */ .toc .toctitle::after, #toc .toctitle::after { content: ""; display: inline-block; width: 63px; /* 3个按钮的宽度 */ } .toc ul, #toc ul { margin: 0 !important; padding: 10px 10px 10px 30px !important; } .toc a, #toc a { color: rgb(var(--xp-blue)) !important; text-decoration: none !important; } .toc a:hover, #toc a:hover { color: rgb(var(--bright-accent)) !important; text-decoration: underline !important; } .tocnumber { color: #666666 !important; } /* 主页样式修改 - Windows XP风格 */ /* 主页横幅样式 */ .main-page-banner { position: relative; display: grid; grid-template-areas: "welcome welcome welcome" "discord faq join"; grid-template-columns: 1fr 1fr 1fr; grid-column-gap: 3%; margin-bottom: 4rem; width: 100%; box-sizing: border-box; border: 1px solid #0055AA; border-radius: 8px 8px 0 0; box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3); background-color: #F1F1F1; overflow: hidden; } /* 欢迎文本区域 */ .main-page-banner .welcome-text { grid-area: welcome; background: linear-gradient(to bottom, #0084C6, #0066AA); color: white; padding: 1.5rem 2rem; margin: 0; width: 100%; position: relative; overflow: hidden; border-bottom: 1px solid #0044AA; z-index: 2; } /* 背景图片支持 */ .main-page-banner .welcome-text::before { content: ""; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-size: cover; background-position: center; opacity: 0.15; z-index: 1; } /* 添加水平扫描线 */ .main-page-banner .welcome-text .scan-line { position: absolute; width: 100%; height: 3px; background: linear-gradient( to right, transparent 0%, rgba(255, 255, 255, 0.08) 30%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.08) 70%, transparent 100% ); z-index: 4; animation: horizScanLine 7s linear infinite; opacity: 0.3; pointer-events: none; box-shadow: 0 0 5px rgba(255, 255, 255, 0.1); } /* 欢迎文本 */ .main-page-banner .welcome-text p { position: relative; z-index: 2; margin: 0; font-size: 1.1em; text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.8); } /* 水平扫描线动画 */ @keyframes horizScanLine { 0% { top: -10px; } 100% { top: 100%; } } /* 导航按钮美化 */ .main-page-banner .navigation-links { display: grid; grid-template-columns: 1fr 1fr 1fr; grid-column-gap: 3%; grid-area: discord / discord / join / join; width: 100%; padding: 1rem; background-color: #F1F1F1; } .main-page-banner .nav-button { background: linear-gradient(to bottom, #F5F5F5, #E5E5E5); border: 1px solid #999999; border-radius: 3px; margin: 0; transition: all 0.3s ease; height: min-content; position: relative; overflow: hidden; box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.1); } /* 按钮光效 */ .main-page-banner .nav-button::before { content: ""; position: absolute; top: 0; left: -100%; width: 100%; height: 100%; background: linear-gradient( 90deg, transparent, rgba(255, 255, 255, 0.5), transparent ); transition: left 0.5s; } .main-page-banner .nav-button:hover::before { left: 100%; } .main-page-banner .nav-button:hover { transform: translateY(-5px); box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1); background: linear-gradient(to bottom, #FEFEFE, #ECECEC); border-color: #666666; } .main-page-banner .nav-button a { display: block; padding: 10px 15px; width: 100%; text-align: center; color: #000000; font-size: 1rem; font-weight: bold; text-decoration: none !important; font-family: var(--body-font); position: relative; z-index: 1; } .main-page-banner .nav-button:hover a { color: #000000; } .main-page-banner .nav-button:active { background: #E0E0E0; box-shadow: inset 1px 1px 2px rgba(0, 0, 0, 0.2); } /* 公告容器 */ .announcement-container { background-color: #F1F1F1; border: 1px solid #0055AA; border-radius: 8px 8px 0 0; box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3); margin-bottom: 2rem; display: flex; flex-wrap: wrap; align-content: space-between; overflow: hidden; position: relative; } .announcement-container .section-title { background: linear-gradient(to bottom, #0084C6, #0066AA); color: white; padding: 5px 10px; font-family: var(--title-font); font-size: 1rem; font-weight: bold; text-align: left; width: 100%; height: 25px; display: flex; align-items: center; justify-content: space-between; border-bottom: 1px solid #0044AA; } /* 标题文本 */ .announcement-container .section-title span { flex-grow: 1; } /* 添加XP窗口控制按钮占位 */ .announcement-container .section-title::after { content: ""; display: inline-block; width: 63px; /* 3个按钮的宽度 */ } .announcement-container .announcement-content { background-color: #FFFFFF; color: #000000; padding: 10px; font-family: var(--body-font); width: 100%; border-bottom: 1px solid #D3DCE3; } .announcement-content span { display: inline-block; white-space: nowrap; animation: marquee 15s linear infinite; } @keyframes marquee { 0% { transform: translate(100%, 0); } 100% { transform: translate(-100%, 0); } } /* 近期页面容器 */ .recent-pages-container { display: flex; flex-wrap: wrap; justify-content: space-between; width: 100%; margin-bottom: 1rem; } .recent-pages-container .page-section { flex-basis: 48%; background-color: #F1F1F1; border: 1px solid #0055AA; border-radius: 8px 8px 0 0; box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3); margin-bottom: 1rem; overflow: hidden; position: relative; } .recent-pages-container .section-title { background: linear-gradient(to bottom, #0084C6, #0066AA); color: white; padding: 5px 10px; font-family: var(--title-font); font-size: 1rem; font-weight: bold; height: 25px; display: flex; align-items: center; justify-content: space-between; border-bottom: 1px solid #0044AA; } /* 标题文本 */ .recent-pages-container .section-title span { flex-grow: 1; } /* 添加XP窗口控制按钮占位 */ .recent-pages-container .section-title::after { content: ""; display: inline-block; width: 63px; /* 3个按钮的宽度 */ } .recent-pages-container .page-list { background-color: #FFFFFF; padding: 8px; max-height: 15rem; overflow-y: auto; border: 1px solid #D1D1D1; margin: 5px; } .recent-pages-container .page-list a { color: #0055AA; display: block; padding: 4px; border-bottom: 1px solid #EFEFEF; font-family: var(--body-font); transition: all 0.2s ease; } .recent-pages-container .page-list a:hover { color: #CC6600; background-color: #E8F1FF; padding-left: 8px; } .recent-pages-container .see-more { background-color: #F0F0F0; border-top: 1px solid #CCCCCC; padding: 4px 8px; text-align: right; font-size: 0.9em; } .recent-pages-container .see-more a { color: #0055AA; font-family: var(--body-font); } .recent-pages-container .see-more a:hover { color: #CC6600; } /* 特色内容容器 */ .featured-content-container { display: flex; flex-wrap: wrap; justify-content: space-between; width: 100%; } .featured-content-container .feature-item { flex-basis: 48%; background-color: #F1F1F1; border: 1px solid #0055AA; border-radius: 8px 8px 0 0; box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3); margin-bottom: 1rem; overflow: hidden; position: relative; } .featured-content-container .section-title { background: linear-gradient(to bottom, #0084C6, #0066AA); color: white; padding: 5px 10px; font-family: var(--title-font); font-size: 1rem; font-weight: bold; height: 25px; display: flex; align-items: center; justify-content: space-between; border-bottom: 1px solid #0044AA; } /* 标题文本 */ .featured-content-container .section-title span { flex-grow: 1; } /* 添加XP窗口控制按钮占位 */ .featured-content-container .section-title::after { content: ""; display: inline-block; width: 63px; /* 3个按钮的宽度 */ } .featured-content-container .feature-content { background-color: #FFFFFF; color: #000000; padding: 10px; font-family: var(--body-font); border: 1px solid #D1D1D1; margin: 5px; } .featured-content-container .feature-content .featured-title { color: #0055AA; font-size: 1.1rem; font-weight: bold; margin-bottom: 0.5rem; font-family: var(--title-font); } .featured-content-container .feature-content .featured-author { font-size: 0.9rem; color: #666666; margin-bottom: 0.5rem; } .featured-content-container .feature-content .featured-description { font-style: italic; color: #333333; } .featured-content-container .see-more { background-color: #F0F0F0; border-top: 1px solid #CCCCCC; padding: 4px 8px; text-align: right; font-size: 0.9em; } /* 工具和资源容器 */ .tools-and-resources { margin-bottom: 2rem; } .tools-container { display: grid; grid-template-columns: 1fr 1fr; grid-gap: 1rem; } .tools-container .tool-item { background-color: #F1F1F1; color: #000000; padding: 10px; border: 1px solid #0055AA; border-radius: 8px 8px 0 0; box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3); font-family: var(--body-font); transition: all 0.3s ease; display: grid; grid-template-areas: "icon content" "title content"; grid-template-columns: max-content 1fr; grid-template-rows: 0.6fr 0.4fr; grid-gap: 0.5rem 1rem; position: relative; overflow: hidden; } .tools-container .tool-item::before { content: ""; position: absolute; top: 0; left: 0; right: 0; height: 25px; background: linear-gradient(to bottom, #0084C6, #0066AA); z-index: 0; } .tools-container .tool-item:hover { transform: translateY(-5px); box-shadow: 0 5px 15px rgba(0, 0, 0, 0.2); } .tools-container .tool-item .tool-icon { grid-area: icon; justify-self: center; align-self: end; position: relative; z-index: 1; width: 32px; height: 32px; margin-top: 30px; } .tools-container .tool-item .tool-title { grid-area: title; text-align: center; position: relative; z-index: 1; } .tools-container .tool-item .tool-title a { color: #0055AA; font-weight: bold; font-family: var(--title-font); } .tools-container .tool-item .tool-title a:hover { color: #CC6600; } .tools-container .tool-item .tool-description { grid-area: content; align-self: center; position: relative; z-index: 1; padding: 5px; background-color: #FFFFFF; border: 1px solid #D1D1D1; border-radius: 3px; margin-top: 30px; } /* 页码样式 */ .mw-page-numbers, .pageNumbers, .pagination { display: flex; justify-content: center; margin: 1rem 0; font-family: var(--body-font); } .mw-page-numbers li, .pageNumbers li, .pagination li { margin: 0 2px; list-style: none; } .mw-page-numbers a, .pageNumbers a, .pagination a { display: inline-block; padding: 5px 10px; background: linear-gradient(to bottom, #F5F5F5, #E5E5E5); border: 1px solid #999999; color: #000000; border-radius: 3px; text-decoration: none; transition: all 0.2s ease; box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.1); } .mw-page-numbers a:hover, .pageNumbers a:hover, .pagination a:hover { background: linear-gradient(to bottom, #FEFEFE, #ECECEC); border-color: #666666; } .mw-page-numbers .current, .pageNumbers .current, .pagination .current { display: inline-block; padding: 5px 10px; background: linear-gradient(to bottom, #D1E5FE, #BBD8FB); border: 1px solid #4A8BF5; color: #000000; border-radius: 3px; font-weight: bold; } /* 侧边栏样式 */ #mw-navigation, #mw-panel, .sidebar { background-color: #F1F1F1 !important; } #mw-navigation h2, #mw-panel h3, .sidebar h3 { background: linear-gradient(to bottom, #0084C6, #0066AA) !important; color: white !important; padding: 5px 10px !important; font-family: var(--header-font) !important; font-size: 1rem !important; font-weight: bold !important; border-bottom: 1px solid #0044AA !important; margin: 0 !important; } /* 引用样式 */ div.blockquote, blockquote { border: 1px solid #7B9EBD; background-color: #ECF4FD; color: #000000; border-radius: 3px; padding: 8px 12px; margin: 1em 1.5em; position: relative; box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.1); } /* 底部工具栏 */ #footer, .footer { background-color: #F1F1F1 !important; border-top: 1px solid #0055AA !important; color: #000000 !important; padding: 1em 0 !important; font-family: var(--body-font) !important; } #footer a, .footer a { color: #0055AA !important; } #footer a:hover, .footer a:hover { color: #CC6600 !important; } /* 轮播图 */ .mw-carousel { position: relative; width: 100%; max-width: 960px; margin: 2em auto; overflow: hidden; border: 1px solid #0055AA; border-radius: 8px 8px 0 0; box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3); aspect-ratio: 16 / 9; background-color: #F1F1F1; } .mw-carousel::before { content: "照片查看器"; position: absolute; top: 0; left: 0; right: 0; height: 25px; background: linear-gradient(to bottom, #0084C6, #0066AA); color: white; display: flex; align-items: center; padding: 0 10px; font-weight: bold; font-family: var(--title-font); z-index: 5; } .mw-carousel .carousel-image { width: 100%; height: 100%; position: relative; margin-top: 25px; /* 为标题栏留出空间 */ } .mw-carousel .carousel-image img { width: 100%; height: 100%; object-fit: cover; display: block; } .mw-carousel .carousel-caption { position: absolute; bottom: 0; left: 0; width: 100%; background: rgba(0, 0, 0, 0.7); color: white; padding: 10px; text-align: left; z-index: 2; } .mw-carousel .carousel-navigation { position: absolute; top: 50%; left: 0; width: 100%; display: flex; justify-content: space-between; transform: translateY(-50%); z-index: 3; padding: 0 10px; } .mw-carousel .carousel-prev, .mw-carousel .carousel-next { background: linear-gradient(to bottom, #F5F5F5, #E5E5E5); border: 1px solid #999999; border-radius: 50%; width: 32px; height: 32px; cursor: pointer; display: flex; justify-content: center; align-items: center; transition: all 0.3s; box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.1); color: #000000; } .mw-carousel .carousel-prev:hover, .mw-carousel .carousel-next:hover { background: linear-gradient(to bottom, #FEFEFE, #ECECEC); border-color: #666666; } .mw-carousel .carousel-indicators { position: absolute; bottom: 40px; left: 50%; transform: translateX(-50%); display: flex; gap: 5px; z-index: 4; } .mw-carousel .carousel-indicators .indicator { width: 10px; height: 10px; background-color: #CCCCCC; border: 1px solid #999999; border-radius: 50%; cursor: pointer; transition: all 0.3s; } .mw-carousel .carousel-indicators .indicator.active { background-color: #0084C6; border-color: #0055AA; } /* 黑幕效果改为橙色半透明(符合XP主题) */ .heimu, .heimu rt, .blackmu, .blackmu rt { --blackmu-color: 229, 140, 36; --blackmu-text-color: 0, 0, 0; --blackmu-link-color: 0, 85, 170; --blackmu-visited-link-color: 0, 64, 128; --blackmu-new-link-color: 204, 102, 0; --blackmu-new-visited-link-color: 153, 76, 0; background-color: rgba(var(--blackmu-color), 0.8); } .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, .blackmu, .blackmu a, a .blackmu, a.new .blackmu, span.blackmu a:visited, span.blackmu a.new, span.blackmu a.external, span.blackmu a.external:visited, span.blackmu a.extiw, span.blackmu a.extiw:visited, span.blackmu a.mw-disambig, span.blackmu a.mw-redirect { transition: color 0.13s linear; color: rgba(var(--blackmu-color), 0.8); text-shadow: none; } span.heimu:hover, span.heimu:active, span.blackmu:hover, span.blackmu:active { color: rgb(var(--blackmu-text-color)); } span.heimu:hover a, a:hover span.heimu, span.blackmu:hover a, a:hover span.blackmu { color: rgb(var(--blackmu-link-color)); } /* 颜色幕 */ .colormu-drk { color: #FFFFFF; } .colormu-bri { color: #000000; } .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; } /* Windows XP样式的提示框(替代hovertip) */ .hovertip { background-color: #FFFFCC !important; border: 1px solid #999999 !important; border-radius: 3px !important; box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3) !important; padding: 6px !important; color: #000000 !important; font-family: var(--body-font) !important; font-size: 0.9rem !important; max-width: 300px !important; } /* Windows XP风格的选项卡 */ .yui-navset .yui-nav, .yui-navset .yui-navset-top .yui-nav { border-color: #7B9EBD !important; border-width: 0 0 1px 0 !important; zoom: 1 !important; position: relative !important; } .yui-navset .yui-nav li, .yui-navset .yui-navset-top .yui-nav li { margin: 0 0.16em 0 0 !important; padding: 1px 0 0 !important; list-style: none !important; display: inline-block !important; } .yui-navset .yui-nav a, .yui-navset .yui-nav a:focus, .yui-navset .yui-nav a:hover, .yui-navset .yui-navset-top .yui-nav a, .yui-navset .yui-navset-top .yui-nav a:focus, .yui-navset .yui-navset-top .yui-nav a:hover { background: linear-gradient(to bottom, #F5F5F5, #E5E5E5) !important; border: 1px solid #7B9EBD !important; color: #000000 !important; cursor: pointer !important; text-decoration: none !important; padding: 0.25em 0.5em !important; border-radius: 2px 2px 0 0 !important; } .yui-navset .yui-nav .selected a, .yui-navset .yui-nav .selected a:focus, .yui-navset .yui-nav .selected a:hover { background: linear-gradient(to bottom, #E3EFFF, #CDE2FE) !important; color: #000000 !important; border-color: #4A8BF5 !important; } .yui-navset .yui-content { background: #FFFFFF !important; border: 1px solid #7B9EBD !important; border-top: none !important; padding: 10px !important; } /* Windows XP风格的代码块 */ pre, code, .mw-code { background-color: #FFFFFF !important; border: 1px solid #7B9EBD !important; color: #000000 !important; font-family: var(--mono-font) !important; padding: 5px !important; border-radius: 3px !important; } /* Windows XP风格的分隔线 */ hr { margin: 1em 2em; padding: 0; height: 0; border: none; border-top: 1px solid #7B9EBD; } /* Windows XP风格块 - 原database主题块 */ .lightstyled-quote { background-color: #ECF4FD; color: #000000; border-left: 3px solid #0055AA; padding: 0.1rem 1rem; margin: 0.5rem 0 0.5rem 0.25rem; box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.1); } .darkstyled-quote { background-color: #D6E9FF; border-left: 3px solid #0055AA; color: #000000; padding: 0.1rem 1rem; margin: 0.5rem 0 0.5rem 0.25rem; box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.1); } .lightblock { background-color: #ECF4FD; color: #000000; padding: 0.01rem 1rem; margin: 0.5rem 0 0.5rem 0.25rem; box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.1); border: 1px solid #7B9EBD; border-radius: 3px; } .darkblock { background-color: #D6E9FF; color: #000000; padding: 0.01rem 1rem; margin: 0.5rem 0 0.5rem 0.25rem; box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.1); border: 1px solid #7B9EBD; border-radius: 3px; } /* Windows XP风格的错误屏幕块 */ .bluescreen { background-color: #0000AA; color: #FFFFFF; padding: 1.5rem; margin: 0.5rem 0 0.5rem 0.25rem; box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3); font-family: "Courier New", monospace; border: 2px solid #FFFFFF; position: relative; } .bluescreen::before { content: "Windows"; position: absolute; top: 0.5rem; left: 1rem; font-weight: bold; } /* Windows XP Logo块 */ .logoblock { padding: 0.5rem 1rem; color: #000000; box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3); margin: 0.5rem 0 0.5rem 0.25rem; display: block; position: relative; background-color: #FFFFFF; border: 1px solid #7B9EBD; border-radius: 3px; min-height: 80px; } .logoblock::after { content: ""; float: center; border: solid 2px transparent; background: url() center/70% no-repeat; opacity: 0.7; top: 0; left: 0; bottom: 0; right: 0; position: absolute; z-index: 1; } /* Windows XP风格的标题块 */ .titlebox { color: #FFFFFF; position: relative; top: -1.6rem; background: linear-gradient(to bottom, #0084C6, #0066AA); padding: 0.5rem 2rem; line-height: 0.1rem; border-radius: 3px 3px 0 0; border: 1px solid #0055AA; border-bottom: none; } /* Windows XP风格警告消息 */ .mw-warning, .warning { background-color: #FFEFD5; color: #000000; padding: 0.7rem 1rem; margin: 1rem 0; border: 1px solid #FF8C00; border-radius: 3px; box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.1); } .mw-warning:before, .warning:before { content: "⚠️ "; font-size: 1.2rem; vertical-align: middle; margin-right: 0.5rem; } /* Windows XP风格的提示消息 */ .mw-info, .info { background-color: #E6F3FF; color: #000000; padding: 0.7rem 1rem; margin: 1rem 0; border: 1px solid #4A8BF5; border-radius: 3px; box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.1); } .mw-info:before, .info:before { content: "ℹ️ "; font-size: 1.2rem; vertical-align: middle; margin-right: 0.5rem; } /* 窗口最小化和最大化状态的样式 */ .minimized .page-list, .minimized .feature-content, .minimized .tool-description, .minimized .announcement-content, .minimized .mw-parser-output, .minimized .toc { display: none !important; } .maximized { position: fixed !important; top: 5% !important; left: 5% !important; width: 90% !important; height: 90% !important; z-index: 9999 !important; } .maximized .page-list, .maximized .feature-content, .maximized .tool-description, .maximized .announcement-content, .maximized .mw-parser-output { max-height: calc(90vh - 40px) !important; overflow-y: auto !important; } /* Windows XP风格的图片浏览器 */ .scp-image-block { box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3); border-radius: 3px; border: 1px solid #7B9EBD; margin: 0 2em 1em; background-color: #FFFFFF; } .scp-image-block.block-right { float: right; margin: 0 0 1em 2em; } .scp-image-block .scp-image-caption { background: linear-gradient(to bottom, #E3EFFF, #CDE2FE); color: #000000; padding: 5px; text-align: center; border-top: 1px solid #7B9EBD; } .scp-image-block img { padding: 5px; display: block; margin: 0 auto; } /* 响应式布局调整 */ @media (max-width: 767px) { .main-page-banner { grid-template-areas: "welcome" "navigation"; grid-template-columns: 1fr; } .main-page-banner .welcome-text { width: 100%; margin-bottom: 0; box-sizing: border-box; } .main-page-banner .navigation-links { grid-area: navigation; display: flex; width: 100%; overflow: visible; } .recent-pages-container .page-section, .featured-content-container .feature-item { flex-basis: 100%; } .tools-container { grid-template-columns: 1fr; } .xp-window-controls { display: none !important; } } /* 打印样式(续) */ @media print { body { background: #FFFFFF !important; color: #000000 !important; } #content { background: #FFFFFF !important; border: none !important; box-shadow: none !important; } .scan-animation, .xp-window-controls, .main-page-banner .navigation-links, .mw-carousel .carousel-navigation, .mw-carousel .carousel-indicators { display: none !important; } a { color: #000000 !important; text-decoration: underline !important; } a::before { content: none !important; } .infobox, .notaninfobox, .navbox, #toc, .toc, .announcement-container, .recent-pages-container .page-section, .featured-content-container .feature-item, .tools-container .tool-item { border: 1px solid #000000 !important; box-shadow: none !important; } .infobox th, .notaninfobox .infobox-title, .navbox-title, .toc .toctitle, #toc .toctitle, .announcement-container .section-title, .recent-pages-container .section-title, .featured-content-container .section-title, .tools-container .tool-item::before { background: #CCCCCC !important; color: #000000 !important; } } /* 滚动条样式 - Windows XP经典风格 */ ::-webkit-scrollbar { width: 16px; height: 16px; } ::-webkit-scrollbar-track { background-color: #F1F1F1; border-left: 1px solid #DFDFDF; } ::-webkit-scrollbar-thumb { background: #C2D2E3; border: 1px solid #7B9EBD; border-radius: 3px; } ::-webkit-scrollbar-thumb:hover { background: #9CB6D3; } ::-webkit-scrollbar-button { background-color: #F1F1F1; border: 1px solid #7B9EBD; height: 16px; width: 16px; } ::-webkit-scrollbar-button:vertical:increment { background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="8" height="8" viewBox="0 0 8 8"><path fill="%237B9EBD" d="M4 0l-4 4h8z" transform="translate(0 2)"/></svg>'); background-repeat: no-repeat; background-position: center; } ::-webkit-scrollbar-button:vertical:decrement { background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="8" height="8" viewBox="0 0 8 8"><path fill="%237B9EBD" d="M0 0l4 4 4-4h-8z" transform="translate(0 2)"/></svg>'); background-repeat: no-repeat; background-position: center; } ::-webkit-scrollbar-button:horizontal:increment { background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="8" height="8" viewBox="0 0 8 8"><path fill="%237B9EBD" d="M0 0l4 4-4 4v-8z" transform="translate(2 0)"/></svg>'); background-repeat: no-repeat; background-position: center; } ::-webkit-scrollbar-button:horizontal:decrement { background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="8" height="8" viewBox="0 0 8 8"><path fill="%237B9EBD" d="M4 0l-4 4 4 4v-8z" transform="translate(2 0)"/></svg>'); background-repeat: no-repeat; background-position: center; } /* 表单元素样式 - Windows XP风格 */ input[type="text"], input[type="password"], input[type="email"], input[type="url"], input[type="search"], textarea, select { background-color: #FFFFFF; border: 1px solid #7B9EBD; color: #000000; font-family: var(--body-font); padding: 4px 8px; border-radius: 2px; transition: border-color 0.2s, box-shadow 0.2s; } input[type="text"]:focus, input[type="password"]:focus, input[type="email"]:focus, input[type="url"]:focus, input[type="search"]:focus, textarea:focus, select:focus { border-color: #5690D2; box-shadow: 0 0 4px rgba(86, 144, 210, 0.5); outline: none; } select { padding: 3px 4px; background: linear-gradient(to bottom, #FEFEFE, #E5E5E5); border: 1px solid #7B9EBD; } input[type="checkbox"], input[type="radio"] { accent-color: #316AC5; } /* 按钮悬停时为Win XP鼠标悬停样式 */ button:hover, .button:hover, input[type="button"]:hover, input[type="submit"]:hover, input[type="reset"]:hover { background-color: #316AC5 !important; color: #FFFFFF !important; border-color: #215091 !important; background-image: none !important; } /* Windows XP风格窗口的工具栏 */ .xp-window-toolbar { background: linear-gradient(to bottom, #F5F5F5, #E5E5E5); border-bottom: 1px solid #CCCCCC; padding: 2px 5px; display: flex; align-items: center; } .xp-window-toolbar button { background: transparent; border: 1px solid transparent; border-radius: 2px; padding: 2px 5px; margin: 0 2px; cursor: pointer; } .xp-window-toolbar button:hover { background-color: #E0E0E0; border-color: #999999; } .xp-window-toolbar button:active { background-color: #D0D0D0; border-color: #999999; border-style: inset; } /* Windows XP风格的状态栏 */ .xp-window-statusbar { background-color: #F1F1F1; border-top: 1px solid #CCCCCC; padding: 2px 8px; font-size: 0.9em; color: #666666; display: flex; justify-content: space-between; } /* 菜单项 */ .xp-window-menu { background-color: #F1F1F1; border-bottom: 1px solid #CCCCCC; display: flex; padding: 0 5px; } .xp-window-menu-item { padding: 3px 10px; cursor: pointer; color: #000000; border: 1px solid transparent; border-radius: 2px; margin-right: 1px; } .xp-window-menu-item:hover { background-color: #E0E0E0; border-color: #999999; } .xp-window-menu-item.active { background-color: #D0D0D0; border-color: #999999; } /* 页码样式增强 - 确保更符合XP风格 */ .mw-pagination { display: flex; align-items: center; justify-content: center; margin: 1.5em 0; padding: 0; list-style: none; } .mw-pagination li { margin: 0 2px; } .mw-pagination a, .mw-pagination span { display: inline-block; min-width: 30px; height: 30px; line-height: 30px; border: 1px solid #7B9EBD; background: linear-gradient(to bottom, #F5F5F5, #E5E5E5); color: #000000; border-radius: 3px; text-align: center; text-decoration: none; box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.1); } .mw-pagination a:hover { background: linear-gradient(to bottom, #FEFEFE, #ECECEC); border-color: #666666; } .mw-pagination .active span { background: linear-gradient(to bottom, #D1E5FE, #BBD8FB); border-color: #4A8BF5; color: #000000; font-weight: bold; } .mw-pagination .disabled span { color: #AAAAAA; background: #F8F8F8; border-color: #DDDDDD; cursor: not-allowed; } /* 进度条样式 - Windows XP风格 */ progress { -webkit-appearance: none; -moz-appearance: none; appearance: none; height: 20px; width: 100%; border: 1px solid #7B9EBD; border-radius: 2px; background-color: #FFFFFF; } progress::-webkit-progress-bar { background-color: #FFFFFF; border-radius: 1px; } progress::-webkit-progress-value { background: linear-gradient(to bottom, #0084C6, #0066AA); border-radius: 1px; } progress::-moz-progress-bar { background: linear-gradient(to bottom, #0084C6, #0066AA); border-radius: 1px; } /* XP风格的开始菜单(可用于站点导航等) */ .xp-start-menu { position: fixed; bottom: 30px; left: 0; width: 320px; background-color: #F1F1F1; border: 1px solid #0055AA; border-radius: 0 8px 8px 0; box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3); z-index: 10000; display: none; } .xp-start-menu.visible { display: block; } .xp-start-menu-header { background: linear-gradient(to right, #0084C6, #0066AA); height: 60px; padding: 10px; color: white; display: flex; align-items: center; border-radius: 0 8px 0 0; } .xp-start-menu-header img { width: 40px; height: 40px; margin-right: 10px; } .xp-start-menu-header .user-name { font-weight: bold; font-size: 1.2em; } .xp-start-menu-body { display: flex; } .xp-start-menu-left { width: 200px; padding: 8px; background-color: white; border-right: 1px solid #CCCCCC; } .xp-start-menu-right { width: 120px; padding: 8px; background-color: #F1F1F1; } .xp-start-menu-item { padding: 8px; margin: 2px 0; display: flex; align-items: center; cursor: pointer; border-radius: 2px; } .xp-start-menu-item:hover { background-color: #316AC5; color: white; } .xp-start-menu-item img { width: 24px; height: 24px; margin-right: 8px; } .xp-start-menu-footer { height: 30px; background: linear-gradient(to right, #0084C6, #0066AA); display: flex; align-items: center; justify-content: flex-end; padding: 0 10px; } .xp-start-button { background: linear-gradient(to bottom, #63B34C, #4E9C3D); color: white; border: 1px solid #4E9C3D; border-radius: 3px; padding: 2px 8px; font-weight: bold; cursor: pointer; } .xp-start-button:hover { background: linear-gradient(to bottom, #74C25D, #5FAD4E); } /* 任务栏 */ .xp-taskbar { position: fixed; bottom: 0; left: 0; width: 100%; height: 30px; background: linear-gradient(to top, #0084C6, #0066AA); display: flex; align-items: center; padding: 0 2px; z-index: 9999; box-shadow: 0 -2px 5px rgba(0, 0, 0, 0.2); } .xp-start-button-container { display: flex; align-items: center; margin-right: 5px; } .xp-taskbar-items { display: flex; flex-grow: 1; height: 100%; align-items: center; overflow-x: auto; } .xp-taskbar-item { background: linear-gradient(to bottom, #F5F5F5, #E5E5E5); border: 1px solid #999999; height: 22px; padding: 0 8px; margin: 0 2px; border-radius: 2px; display: flex; align-items: center; min-width: 100px; max-width: 200px; cursor: pointer; box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.1); } .xp-taskbar-item:hover { background: linear-gradient(to bottom, #FEFEFE, #ECECEC); } .xp-taskbar-item.active { background: linear-gradient(to bottom, #D1E5FE, #BBD8FB); border-color: #4A8BF5; } .xp-taskbar-item img { width: 16px; height: 16px; margin-right: 5px; } .xp-taskbar-item span { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; } .xp-system-tray { display: flex; align-items: center; height: 100%; padding: 0 5px; border-left: 1px solid rgba(255, 255, 255, 0.2); } .xp-system-tray-item { width: 16px; height: 16px; margin: 0 3px; cursor: pointer; } /* XP风格的系统图标 */ .xp-icon { display: inline-block; width: 32px; height: 32px; margin: 0 5px; cursor: pointer; position: relative; text-align: center; } .xp-icon img { width: 32px; height: 32px; display: block; margin: 0 auto; } .xp-icon span { display: block; font-size: 0.8em; margin-top: 2px; color: #000000; background-color: rgba(255, 255, 255, 0.7); border-radius: 2px; padding: 0 2px; width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .xp-icon:hover span { background-color: #316AC5; color: white; } .xp-shortcut::before { content: ""; position: absolute; bottom: 0; left: 0; width: 8px; height: 8px; background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="8" height="8" viewBox="0 0 8 8"><path fill="%23000000" d="M0 0v6l6-3z" transform="translate(1 1)"/></svg>'); background-repeat: no-repeat; } /* 通用辅助类 */ .xp-shadow { box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3); } .xp-border { border: 1px solid #7B9EBD; border-radius: 3px; } .xp-header-gradient { background: linear-gradient(to bottom, #0084C6, #0066AA); color: white; } .xp-button-gradient { background: linear-gradient(to bottom, #F5F5F5, #E5E5E5); } .xp-panel-gradient { background: linear-gradient(to bottom, #E3EFFF, #CDE2FE); } /* 确保风格一致性 */ * { box-sizing: border-box; } /* 淡入动画修改 - 使用XP风格的淡入效果 */ @keyframes fadeIn { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } } .mw-parser-output > * { animation: fadeIn 0.3s ease-out forwards; opacity: 0; } /* 延迟动画 */ .mw-parser-output > *:nth-child(1) { animation-delay: 0.05s; } .mw-parser-output > *:nth-child(2) { animation-delay: 0.1s; } .mw-parser-output > *:nth-child(3) { animation-delay: 0.15s; } .mw-parser-output > *:nth-child(4) { animation-delay: 0.2s; } .mw-parser-output > *:nth-child(5) { animation-delay: 0.25s; } .mw-parser-output > *:nth-child(n+6) { animation-delay: 0.3s; } /* Windows XP启动动画 - 仅在页面加载时出现 */ .xp-startup-screen { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background-color: #000000; z-index: 10001; display: flex; flex-direction: column; justify-content: center; align-items: center; color: white; animation: fadeOut 3s forwards; animation-delay: 2s; } .xp-startup-logo { width: 200px; height: 200px; margin-bottom: 30px; background: url() center/contain no-repeat; } .xp-startup-progress { width: 300px; height: 20px; background-color: #333333; border: 1px solid #555555; position: relative; overflow: hidden; } .xp-startup-progress::after { content: ""; position: absolute; top: 0; left: -100%; width: 100%; height: 100%; background: linear-gradient(to right, transparent 0%, #0084C6 30%, #0084C6 70%, transparent 100% ); animation: progressMove 1.5s linear infinite; } @keyframes progressMove { 0% { left: -100%; } 100% { left: 100%; } } @keyframes fadeOut { 0% { opacity: 1; visibility: visible; } 99% { opacity: 0; visibility: visible; } 100% { opacity: 0; visibility: hidden; } } /* 页面错误消息 - 模拟XP错误弹窗 */ .xp-error-dialog { position: fixed; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 300px; background-color: #F1F1F1; border: 1px solid #0055AA; border-radius: 8px 8px 0 0; box-shadow: 2px 2px 15px rgba(0, 0, 0, 0.5); z-index: 10000; } .xp-error-dialog-title { background: linear-gradient(to bottom, #0084C6, #0066AA); color: white; padding: 5px 10px; font-family: var(--title-font); font-size: 1rem; font-weight: bold; height: 25px; display: flex; align-items: center; justify-content: space-between; border-bottom: 1px solid #0044AA; } .xp-error-dialog-title span { flex-grow: 1; } .xp-error-dialog-content { padding: 15px; display: flex; align-items: flex-start; } .xp-error-dialog-icon { width: 32px; height: 32px; margin-right: 10px; background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 32 32"><circle cx="16" cy="16" r="16" fill="%23FF0000"/><text x="16" y="24" text-anchor="middle" font-family="Arial" font-weight="bold" font-size="24" fill="%23FFFFFF">!</text></svg>') no-repeat; } .xp-error-dialog-message { flex-grow: 1; color: #000000; } .xp-error-dialog-buttons { display: flex; justify-content: flex-end; padding: 10px 15px 15px; } .xp-error-dialog-ok { background: linear-gradient(to bottom, #F5F5F5, #E5E5E5); border: 1px solid #999999; border-radius: 3px; padding: 4px 15px; cursor: pointer; transition: all 0.2s; box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.1); } .xp-error-dialog-ok:hover { background: linear-gradient(to bottom, #FEFEFE, #ECECEC); border-color: #666666; } .xp-error-dialog-ok:active { background: #E0E0E0; box-shadow: inset 1px 1px 2px rgba(0, 0, 0, 0.2); } /* 搜索框右侧按钮 - 更具体的选择器 */ #searchButton, #mw-searchButton, .searchButton, button[name="go"], button[name="fulltext"], .mw-ui-button.mw-ui-progressive { background-color: rgb(var(--gray-monochrome)) !important; border: 1px solid rgb(var(--bright-accent)) !important; color: rgb(var(--bright-accent)) !important; font-family: var(--body-font) !important; padding: 0.3em 0.6em !important; cursor: pointer !important; transition: all 0.2s ease !important; } #searchButton:hover, #mw-searchButton:hover, .searchButton:hover, button[name="go"]:hover, button[name="fulltext"]:hover, .mw-ui-button.mw-ui-progressive:hover { background-color: rgb(var(--bright-accent)) !important; color: rgb(var(--black-monochrome)) !important; box-shadow: 0 0 10px rgba(var(--bright-accent), 0.3) !important; } /* 变色龙皮肤特定搜索按钮 */ .chameleon-search-form .btn { background-color: rgb(var(--gray-monochrome)) !important; border: 1px solid rgb(var(--bright-accent)) !important; color: rgb(var(--bright-accent)) !important; font-family: var(--body-font) !important; } .chameleon-search-form .btn:hover { background-color: rgb(var(--bright-accent)) !important; color: rgb(var(--black-monochrome)) !important; } /* 底部工具栏完整样式 */ #footer, .footer, #footer-places, #footer-info, #footer-info-lastmod, #footer-info-viewcount, #footer-places-privacy, #footer-places-about, #footer-places-disclaimer, #footer-icons, .footer-info, .footer-places, .footer-icons, .printfooter, .mw-footer, .mw-footer li { background-color: rgb(var(--black-monochrome)) !important; color: rgb(var(--bright-accent)) !important; font-family: var(--body-font) !important; border: none !important; } /* 页脚主容器 */ .mw-footer, #footer, .footer { background-color: rgb(var(--black-monochrome)) !important; border-top: 2px solid rgb(var(--bright-accent)) !important; margin-top: 1em !important; padding: 1em 0 !important; } /* 页脚链接 */ #footer a, .footer a, .mw-footer a { color: rgb(var(--bright-accent)) !important; text-decoration: none !important; } #footer a:hover, .footer a:hover, .mw-footer a:hover { color: rgb(var(--white-monochrome)) !important; text-decoration: underline !important; } /* 页脚列表项 */ #footer li, .footer li, .mw-footer li { color: rgb(var(--bright-accent)) !important; margin: 0.5em 0 !important; } /* 底部工具栏按钮区域 */ #footer-poweredbyico, #footer-copyrightico, .footer-icons { background-color: transparent !important; } /* 变色龙皮肤特定的页脚 */ .p-tb, #p-tb, .tools-menu, #t-whatlinkshere, #t-recentchangeslinked, #t-specialpages, #t-print, #t-permalink, #t-info { background-color: rgb(var(--black-monochrome)) !important; color: rgb(var(--bright-accent)) !important; } /* 页脚的具体区域 */ .mw-footer-container { background-color: rgb(var(--black-monochrome)) !important; } /* 底部导航区域 */ #footer-navigation { background-color: rgb(var(--black-monochrome)) !important; border-top: 1px solid rgb(var(--bright-accent)) !important; } /* 变色龙皮肤特定修复 */ .chameleon-toc { background-color: rgb(var(--gray-monochrome)) !important; border: 2px solid rgb(var(--bright-accent)) !important; } .chameleon-toc .toctitle { background-color: rgb(var(--bright-accent)) !important; color: rgb(var(--black-monochrome)) !important; } /* 搜索按钮图标 */ .mw-ui-icon:before, .oo-ui-icon-search { filter: brightness(0) saturate(100%) invert(58%) sepia(78%) saturate(481%) hue-rotate(353deg) brightness(101%) contrast(91%); } /* 工具条完整修复 */ #mw-panel, #mw-head, #mw-head-base, #mw-page-base, #left-navigation, #right-navigation, #p-personal, #p-search, #p-tb, #p-cactions, #p-namespaces, #p-views, #p-variants, #p-coll-print_export, #p-wikibase-otherprojects, #p-lang { background-color: rgb(var(--black-monochrome)) !important; } /* 工具条容器 */ .mw-portlet, .vector-menu { background-color: rgb(var(--black-monochrome)) !important; } /* 工具条标题 */ .mw-portlet h3, .vector-menu h3, .vector-menu-heading { background-color: rgb(var(--bright-accent)) !important; color: rgb(var(--black-monochrome)) !important; padding: 0.25em 0.5em !important; border: none !important; } /* Echo扩展通知图标修复 */ /* 通知图标基础样式 */ #pt-notifications-alert, #pt-notifications-notice, .mw-echo-notifications-badge, .mw-echo-notification-badge-nojs { background-color: transparent !important; border: none !important; } /* 修复图标颜色和可见性 */ #pt-notifications-alert .mw-echo-notifications-badge:before, #pt-notifications-notice .mw-echo-notifications-badge:before, .mw-echo-notifications-badge:before { color: rgb(var(--bright-accent)) !important; filter: none !important; opacity: 1 !important; } /* 未读通知计数器 */ .mw-echo-notifications-badge:after, .mw-echo-notification-badge-nojs:after { background-color: rgb(var(--bright-accent)) !important; color: rgb(var(--black-monochrome)) !important; border: 1px solid rgb(var(--black-monochrome)) !important; opacity: 1 !important; } /* 图标悬停效果 */ #pt-notifications-alert:hover .mw-echo-notifications-badge:before, #pt-notifications-notice:hover .mw-echo-notifications-badge:before { color: rgb(var(--white-monochrome)) !important; } /* 修复SVG图标 */ .mw-echo-notifications-badge svg, .oo-ui-icon-bell svg, .oo-ui-icon-tray svg { fill: rgb(var(--bright-accent)) !important; stroke: rgb(var(--bright-accent)) !important; } /* 确保图标容器可见 */ #pt-notifications-alert, #pt-notifications-notice { opacity: 1 !important; visibility: visible !important; display: inline-block !important; } /* 通知面板样式 */ .mw-echo-ui-overlay, .mw-echo-ui-notificationsWidget { background-color: rgb(var(--black-monochrome)) !important; border: 2px solid rgb(var(--bright-accent)) !important; color: rgb(var(--white-monochrome)) !important; } /* 通知项目 */ .mw-echo-ui-notificationItemWidget { background-color: rgb(var(--gray-monochrome)) !important; border-bottom: 1px solid rgb(var(--bright-accent)) !important; color: rgb(var(--white-monochrome)) !important; } .mw-echo-ui-notificationItemWidget:hover { background-color: rgba(var(--bright-accent), 0.1) !important; } /* 通知标题和内容 */ .mw-echo-ui-notificationItemWidget-content-message-header { color: rgb(var(--bright-accent)) !important; } .mw-echo-ui-notificationItemWidget-content-message-body { color: rgb(var(--white-monochrome)) !important; } #pt-notifications-alert .oo-ui-iconElement-icon, #pt-notifications-notice .oo-ui-iconElement-icon, .mw-echo-notification-badge .oo-ui-iconElement-icon { background-color: transparent !important; } /* 只修改通知图标的颜色 */ #pt-notifications-alert .oo-ui-icon-bell, #pt-notifications-notice .oo-ui-icon-tray { filter: invert(58%) sepia(58%) saturate(1008%) hue-rotate(351deg) brightness(97%) contrast(94%); } /* 强制显示通知图标 - 针对可能被隐藏的情况 */ #p-personal .vector-menu-content-list #pt-notifications-alert, #p-personal .vector-menu-content-list #pt-notifications-notice { display: list-item !important; visibility: visible !important; opacity: 1 !important; } /* 如果使用Font Awesome或其他图标字体 */ .mw-echo-notifications-badge:before, .oo-ui-icon-bell:before, .oo-ui-icon-tray:before { color: rgb(var(--bright-accent)) !important; opacity: 1 !important; visibility: visible !important; } /* 在顶栏显示用户头像 - 针对变色龙皮肤 */ .navbar-userloggedin, #personal-inner, #p-personal .vector-menu-content-list > li:first-child, .navbar-personaltools > li:first-child { position: relative; padding-left: 30px !important; } .navbar-userloggedin::before, #personal-inner::before, #p-personal .vector-menu-content-list > li:first-child > a::before, .navbar-personaltools > li:first-child > a::before { content: ""; position: absolute; left: 5px; top: 50%; transform: translateY(-50%); width: 24px; height: 24px; border-radius: 50%; background-size: cover; background-position: center; border: 1px solid rgb(var(--bright-accent)); z-index: 100; } /* 头像悬停效果 */ .navbar-userloggedin::before, #personal-inner::before, #p-personal .vector-menu-content-list > li:first-child > a::before, .navbar-personaltools > li:first-child > a::before { transition: all 0.3s ease !important; } .navbar-userloggedin:hover::before, #personal-inner:hover::before, #p-personal .vector-menu-content-list > li:first-child > a:hover::before, .navbar-personaltools > li:first-child > a:hover::before { transform: translateY(-50%) scale(1.2) !important; box-shadow: 0 0 10px rgba(var(--bright-accent), 0.6) !important; border-color: rgb(var(--white-monochrome)) !important; } /* 本段内容来自萌娘百科 https://zh.moegirl.org.cn/MediaWiki:Gadget-site-styles.css 感谢贡献!*/ /* 版权协定:知识共享 署名-非商业性使用-相同方式共享 3.0 */ .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; } /* 该文档为一个hover特效库,由一些常用的效果以及GitHub上的开源项目“Hover.css”的一些部分构成。 请使用hovers在页面中进行载入。 */ /* hover状态切换 */ .hover-change, .hover-remote { position: relative; display: inline-block; transition: opacity 0.5s linear; } .hover-change-before, .hover-change-after, .hover-remote-target { transition: inherit; } .hover-change-after, .hover-remote-target { opacity: 0; position: absolute; top: 0; left: 0; } .hover-remote-target { left: 100%; } .hover-change-after[style^='right:'], .hover-change-after[style*=' right:'], .hover-remote-after[style^='right:'], .hover-remote-after[style*=' right:'] { left: initial; } .hover-change-after[style^='bottom:'], .hover-change-after[style*=' bottom:'], .hover-remote-after[style^='bottom:'], .hover-remote-after[style*=' bottom:'] { top: initial; } .hover-change-after:hover, .hover-remote-target { opacity: 0; margin-left: -9999px; } /* 主要用于制作hover形式的标签页(tab)切换 */ .hover-tab-mode { position: relative; transition: none; } .hover-tab-mode .hover-remote { transition: inherit; position: static; } /* 闪烁效果 */ .hover-change.flash:hover .hover-change-before { margin-left: -9999px; } .hover-change:hover > .hover-change-before, .hover-remote > .hover-remote-target, .hover-change:hover > a > .hover-change-before, .hover-remote > a > .hover-remote-target { opacity: 0; } .hover-change:hover > .hover-change-after, .hover-remote:hover > .hover-remote-target, .hover-change:hover > a > .hover-change-after, .hover-remote:hover > a > .hover-remote-target { opacity: 1; margin-left: initial; } /* 基类 */ [class*='hovers-'] { display: inline-block; box-shadow: 0 0 1px rgba(0, 0, 0, 0); transform: perspective(1px) translateZ(0); vertical-align: middle; transition-duration: 0.25s; transition-property: all; } /* 旋转放大 */ .hovers-rotate-shrink { transition-duration: 0.5s; transform: rotate(0) scale(0.75); } .hovers-rotate-shrink:hover { transform: rotate(360deg) scale(1); } .hovers-rotate-shrink-reverse { transition-duration: 0.5s; transform: rotate(360deg) scale(0.75); } .hovers-rotate-shrink-reverse:hover { transform: rotate(0) scale(1); } /* 旋转 */ .hovers-rotate, .hovers-rotate-reverse:hover { transition-duration: 0.5s; transform: rotate(0); } .hovers-rotate-reverse, .hovers-rotate:hover { transition-duration: 0.5s; transform: rotate(360deg); } /* 正常 => 浅 */ .hovers-fade-deep, .hovers-fade, .hovers-fade-shallow { opacity: 1; } .hovers-fade-deep:hover, .hovers-fade-deep.active { opacity: 0.35; } .hovers-fade:hover, .hovers-fade.active { opacity: 0.5; } .hovers-fade-shallow:hover, .hovers-fade-shallow.active { opacity: 0.75; } /* 浅 => 正常 */ .hovers-bloom-deep { opacity: 0.35; } .hovers-bloom { opacity: 0.5; } .hovers-bloom-shallow { opacity: 0.75; } .hovers-bloom-deep:hover, .hovers-bloom-deep.active, .hovers-bloom:hover, .hovers-bloom.active, .hovers-bloom-shallow:hover, .hovers-bloom-shallow.active { opacity: 1; } /* 正常 => 大 */ .hovers-grow-deep, .hovers-grow, .hovers-grow-shallow { transform: scale(1); } .hovers-grow-deep:hover, .hovers-grow-deep.active { transform: scale(1.5); } .hovers-grow:hover, .hovers-grow.active { transform: scale(1.25); } .hovers-grow-shallow:hover, .hovers-grow-shallow.active { transform: scale(1.1); } /* 正常 => 小 */ .hovers-shrink-deep:hover, .hovers-shrink-deep.active, .hovers-shrink:hover, .hovers-shrink.active, .hovers-shrink-shallow:hover, .hovers-shrink-shallow.active { transform: scale(1); } .hovers-shrink-deep { transform: scale(0.5); } .hovers-shrink { transform: scale(0.75); } .hovers-shrink-shallow { transform: scale(0.9); } /* 左右抖动 */ @keyframes shake-flexible { 25% { transform: translateX(-0.0625em); } 50% { transform: translateX(0.0625em); } 75% { transform: translateX(-0.0625em); } } .hovers-shake-flexible:hover, .hovers-shake-flexible.active { animation: shake-flexible 0.5s ease-out; } @keyframes shake { 25% { transform: translateX(-8px); } 50% { transform: translateX(8px); } 75% { transform: translateX(-8px); } } .hovers-shake:hover, .hovers-shake.active { animation: shake 0.5s ease-out; } /* 上下抖动 */ @keyframes bounce-flexible { 25% { transform: translateY(-0.0625em); } 50% { transform: translateY(0.0625em); } 75% { transform: translateY(-0.0625em); } } .hovers-bounce-flexible:hover, .hovers-bounce-flexible.active { animation: bounce-flexible 0.5s ease-out; } @keyframes bounce { 25% { transform: translateY(-8px); } 50% { transform: translateY(8px); } 75% { transform: translateY(-8px); } } .hovers-bounce:hover, .hovers-bounce.active { position: relative; left: 0; animation: bounce 0.5s ease-out; } /* 绕顶端中点抖动 */ @keyframes swing { 20% { transform: rotate3d(0, 0, 1, 10deg); } 40% { transform: rotate3d(0, 0, 1, -10deg); } 60% { transform: rotate3d(0, 0, 1, 5deg); } 80% { transform: rotate3d(0, 0, 1, -5deg); } to { transform: rotate3d(0, 0, 1, 0deg); } } .hovers-swing { transform-origin: top center; } .hovers-swing:hover, .hovers-swing.active { animation: swing 0.75s ease-out; } /* 正常 => 大 */ @keyframes pulse-grow { to { transform: scale(1.1); } } .hovers-pulse-grow:hover, .hovers-pulse-grow.active { animation: pulse-grow 0.5s linear infinite alternate; } /* 正常 => 小 */ @keyframes pulse-shrink { to { transform: scale(0.9); } } .hovers-pulse-shrink:hover, .hovers-pulse-shrink.active { animation: pulse-shrink 0.5s linear infinite alternate; } /* 正常 => 小 */ @keyframes push { 50% { transform: scale(0.8); } } .hovers-push:hover, .hovers-push.active { animation: push 0.3s linear; } /* 正常 => 大 */ @keyframes pop { 50% { transform: scale(1.2); } } .hovers-pop:hover, .hovers-pop.active { animation: pop 0.3s linear; } /* 正常 => 大 => 正常 => 大 */ .hovers-bounce-in:hover, .hovers-bounce-in.active { transform: scale(1.2); transition-duration: 0.5s; transition-timing-function: cubic-bezier(0.47, 2.02, 0.31, -0.36); } /* 正常 => 小 => 正常 => 小 */ .hovers-bounce-out:hover, .hovers-bounce-out.active { transform: scale(0.8); transition-duration: 0.5s; transition-timing-function: cubic-bezier(0.47, 2.02, 0.31, -0.36); } /* 倾斜 */ .hovers-tilt:hover, .hovers-tilt.active { transition-duration: 0.3s; transform: rotate(4deg); } /* 倾斜 + 放大 */ .hovers-grow-rotate:hover, .hovers-grow-rotate.active { transition-duration: 0.3s; transform: scale(1.1) rotate(4deg); } /* 升起 */ .hovers-float:hover, .hovers-float.active { transition-duration: 0.3s; transition-timing-function: ease-out; transform: translateY(-8px); } /* 下沉 */ .hovers-sink:hover, .hovers-sink.active { transition-duration: 0.3s; transition-timing-function: ease-out; transform: translateY(8px); } /* 飘浮 */ @keyframes bob { 0% { transform: translateY(-10px); } 50% { transform: translateY(-5px); } 100% { transform: translateY(-10px); } } @keyframes bob-float { 100% { transform: translateY(-10px); } } .hovers-bob:hover, .hovers-bob.active { animation-name: bob-float, bob; animation-duration: 0.3s, 1.5s; animation-delay: 0s, 0.3s; animation-timing-function: ease-out, ease-in-out; animation-iteration-count: 1, infinite; animation-fill-mode: forwards; animation-direction: normal, alternate; } /* 悬挂 */ @keyframes hang { 0% { transform: translateY(10px); } 50% { transform: translateY(5px); } 100% { transform: translateY(10px); } } @keyframes hang-sink { 100% { transform: translateY(10px); } } .hovers-hang:hover, .hovers-hang.active { animation-name: hang-sink, hang; animation-duration: 0.3s, 1.5s; animation-delay: 0s, 0.3s; animation-timing-function: ease-out, ease-in-out; animation-iteration-count: 1, infinite; animation-fill-mode: forwards; animation-direction: normal, alternate; } /* 非对称 */ .hovers-skew:hover, .hovers-skew.active { transform: skew(-10deg); } /* 非对称-左 */ .hovers-skew-forward { transform-origin: 0 100%; } .hovers-skew-forward:hover, .hovers-skew-forward.active { transform: skew(-10deg); } /* 非对称-右 */ .hovers-skew-backward { transform-origin: 0 100%; } .hovers-skew-backward:hover, .hovers-skew-backward.active { transform: skew(10deg); } /* 垂直抖动 */ @keyframes wobble-vertical { 16.65% { transform: translateY(8px); } 33.3% { transform: translateY(-6px); } 49.95% { transform: translateY(4px); } 66.6% { transform: translateY(-2px); } 83.25% { transform: translateY(1px); } 100% { transform: translateY(0); } } .hovers-wobble-vertical:hover, .hovers-wobble-vertical.active { animation-name: wobble-vertical; animation-duration: 1s; animation-timing-function: ease-in-out; animation-iteration-count: 1; } /* 水平抖动 */ @keyframes wobble-horizontal { 16.65% { transform: translateX(8px); } 33.3% { transform: translateX(-6px); } 49.95% { transform: translateX(4px); } 66.6% { transform: translateX(-2px); } 83.25% { transform: translateX(1px); } 100% { transform: translateX(0); } } .hovers-wobble-horizontal:hover, .hovers-wobble-horizontal.active { animation-name: wobble-horizontal; animation-duration: 1s; animation-timing-function: ease-in-out; animation-iteration-count: 1; } /* 右下弹回 */ @keyframes wobble-to-bottom-right { 16.65% { transform: translate(8px, 8px); } 33.3% { transform: translate(-6px, -6px); } 49.95% { transform: translate(4px, 4px); } 66.6% { transform: translate(-2px, -2px); } 83.25% { transform: translate(1px, 1px); } 100% { transform: translate(0, 0); } } .hovers-wobble-to-bottom-right:hover, .hovers-wobble-to-bottom-right.active { animation-name: wobble-to-bottom-right; animation-duration: 1s; animation-timing-function: ease-in-out; animation-iteration-count: 1; } /* 右上弹回 */ @keyframes wobble-to-top-right { 16.65% { transform: translate(8px, -8px) } 33.3% { transform: translate(-6px, 6px); } 49.95% { transform: translate(4px, -4px); } 66.6% { transform: translate(-2px, 2px); } 83.25% { transform: translate(1px, -1px); } 100% { transform: translate(0); } } .hovers-wobble-to-top-right:hover, .hovers-wobble-to-top-right.active { animation-name: wobble-to-top-right; animation-duration: 1s; animation-timing-function: ease-in-out; animation-iteration-count: 1; } /* 果冻 */ @keyframes wobble-top { 16.65% { transform: skew(-12deg); } 33.3% { transform: skew(10deg); } 49.95% { transform: skew(-6deg); } 66.6% { transform: skew(4deg); } 83.25% { transform: skew(-2deg); } 100% { transform: skew(0); } } /* 赘肉 */ .hovers-wobble-top { transform-origin: 0 100%; } .hovers-wobble-top:hover, .hovers-wobble-top.active { animation-name: wobble-top; animation-duration: 1s; animation-timing-function: ease-in-out; animation-iteration-count: 1; } @keyframes wobble-bottom { 16.65% { transform: skew(-12deg); } 33.3% { transform: skew(10deg); } 49.95% { transform: skew(-6deg); } 66.6% { transform: skew(4deg); } 83.25% { transform: skew(-2deg); } 100% { transform: skew(0); } } .hovers-wobble-bottom { transform-origin: 100% 0; } .hovers-wobble-bottom:hover, .hovers-wobble-bottom.active { animation-name: wobble-bottom; animation-duration: 1s; animation-timing-function: ease-in-out; animation-iteration-count: 1; } /* 颤动 */ @keyframes wobble-skew { 16.65% { transform: skew(-12deg); } 33.3% { transform: skew(10deg); } 49.95% { transform: skew(-6deg); } 66.6% { transform: skew(4deg); } 83.25% { transform: skew(-2deg); } 100% { transform: skew(0); } } .hovers-wobble-skew:hover, .hovers-wobble-skew.active { animation-name: wobble-skew; animation-duration: 1s; animation-timing-function: ease-in-out; animation-iteration-count: 1; } /* 振动 */ @keyframes buzz { 50% { transform: translateX(3px) rotate(2deg); } 100% { transform: translateX(-3px) rotate(-2deg); } } .hovers-buzz:hover, .hovers-buzz.active { animation-name: buzz; animation-duration: 0.15s; animation-timing-function: linear; animation-iteration-count: infinite; } /* 振出 */ @keyframes buzz-out { 10% { transform: translateX(3px) rotate(2deg); } 20% { transform: translateX(-3px) rotate(-2deg); } 30% { transform: translateX(3px) rotate(2deg); } 40% { transform: translateX(-3px) rotate(-2deg); } 50% { transform: translateX(2px) rotate(1deg); } 60% { transform: translateX(-2px) rotate(-1deg); } 70% { transform: translateX(2px) rotate(1deg); } 80% { transform: translateX(-2px) rotate(-1deg); } 90% { transform: translateX(1px) rotate(0); } 100% { transform: translateX(-1px) rotate(0); } } .hovers-buzz-out:hover, .hovers-buzz-out.active { animation-name: buzz-out; animation-duration: 0.75s; animation-timing-function: linear; animation-iteration-count: 1; } /* 右移 */ .hovers-forward:hover, .hovers-forward.active { transform: translateX(8px); } /* 左移 */ .hovers-backward:hover, .hovers-backward.active { transform: translateX(-8px); } /* 自由移动 */ .hovers-top, .hovers-left, .hovers-bottom, .hovers-right { transition: all 0.5s; } .hovers-top:hover, .hovers-top.active { transform: translateY(-0.0625em); } .hovers-left:hover, .hovers-left.active { transform: translateX(-0.0625em); } .hovers-bottom:hover, .hovers-bottom.active { transform: translateY(0.0625em); } .hovers-right:hover, .hovers-right.active { transform: translateX(0.0625em); } /* 滤镜 */ .hovers-blur, .hovers-blur-reverse, .hovers-brightness, .hovers-brightness-reverse, .hovers-contrast, .hovers-contrast-reverse, .hovers-grayscale, .hovers-grayscale-reverse, .hovers-invert, .hovers-invert-reverse, .hovers-saturate, .hovers-saturate-reverse, .hovers-sepia, .hovers-sepia-reverse, .hovers-hue-rotate, .hovers-hue-rotate-reverse { transition-duration: 0.75s; } .hovers-blur:hover, .hovers-blur.active, .hovers-brightness:hover, .hovers-brightness.active, .hovers-contrast:hover, .hovers-contrast.active, .hovers-grayscale:hover, .hovers-grayscale.active, .hovers-invert:hover, .hovers-invert.active, .hovers-saturate:hover, .hovers-saturate.active, .hovers-sepia:hover, .hovers-sepia.active, .hovers-hue-rotate:hover, .hovers-hue-rotate.active { filter: initial; } .hovers-blur { filter: blur(5px); } .hovers-blur-reverse:hover, .hovers-blur-reverse.active { filter: blur(5px); } .hovers-brightness { filter: brightness(50%); } .hovers-brightness-reverse:hover, .hovers-brightness-reverse.active { filter: brightness(50%); } .hovers-contrast { filter: contrast(50%); } .hovers-contrast-reverse:hover, .hovers-contrast-reverse.active { filter: contrast(50%); } .hovers-grayscale { filter: grayscale(100%); } .hovers-grayscale-reverse:hover, .hovers-grayscale-reverse.active { filter: grayscale(100%); } .hovers-invert { filter: invert(100%); } .hovers-invert-reverse:hover, .hovers-invert-reverse.active { filter: invert(100%); } .hovers-saturate { filter: saturate(200%); } .hovers-saturate-reverse:hover, .hovers-saturate-reverse.active { filter: saturate(200%); } .hovers-sepia { filter: sepia(100%); } .hovers-sepia-reverse:hover, .hovers-sepia-reverse.acitve { filter: sepia(100%); } .hovers-hue-rotate { filter: hue-rotate(180deg); } .hovers-hue-rotate-reverse:hover, .hovers-hue-rotate-reverse.active { filter: hue-rotate(180deg); } /* 背景滑动 */ .hovers-sweep-to-right, .hovers-sweep-to-left, .hovers-sweep-to-bottom, .hovers-sweep-to-top, .hovers-radial-out, .hovers-radial-in { position: relative; transition-duration: 0.3s; transition-timing-function: ease-out; overflow: hidden; } .hovers-sweep-to-right:before, .hovers-sweep-to-left:before, .hovers-sweep-to-bottom:before, .hovers-sweep-to-top:before, .hovers-radial-out:before, .hovers-radial-in:before { content: ''; position: absolute; z-index: 10; top: 0; left: 0; right: 0; bottom: 0; background: inherit; transform: scaleX(0); transition: inherit; } .hovers-sweep-to-bottom:before, .hovers-sweep-to-top:before { transform: scaleY(0); } .hovers-radial-out:before, .hovers-radial-in:before { border-radius: 50%; transform: scale(0); } .hovers-radial-in:before { transform: scale(2); } .hovers-sweep-to-right:before { transform-origin: 0 50%; } .hovers-sweep-to-left:before { transform-origin: 100% 50%; } .hovers-sweep-to-bottom:before { transform-origin: 50% 0; } .hovers-sweep-to-top:before { transform-origin: 50% 100%; } .hovers-radial-out:hover:before, .hovers-radial-out.active:before { transform: scale(2); } .hovers-radial-in:hover:before, .hovers-radial-in.active:before { transform: scale(0); } .hovers-sweep-to-right .hovers-content.center, .hovers-sweep-to-left .hovers-content.center, .hovers-sweep-to-bottom .hovers-content.center, .hovers-sweep-to-top .hovers-content.center, .hovers-radial-out .hovers-content.center, .hovers-radial-in .hovers-content.center { display: flex; align-items: center; justify-content: center; word-break: break-all; } .hovers-sweep-to-right:hover:before, .hovers-sweep-to-left:hover:before, .hovers-sweep-to-bottom:hover:before, .hovers-sweep-to-top:hover:before, .hovers-sweep-to-right.active:before, .hovers-sweep-to-left:hover:before, .hovers-sweep-to-bottom:hover:before, .hovers-sweep-to-top:hover:before { transform: scaleX(1); } .hovers-sweep-to-right .hovers-content, .hovers-sweep-to-left .hovers-content, .hovers-sweep-to-bottom .hovers-content, .hovers-sweep-to-top .hovers-content, .hovers-radial-out .hovers-content, .hovers-radial-in .hovers-content { width: 100%; height: 100%; position: absolute; transition-property: all; transition-duration: inherit; top: 0; left: 0; z-index: 11; } .hovers-sweep-to-right .hovers-content { left: initial; right: 100%; } .hovers-sweep-to-right:hover .hovers-content, .hovers-sweep-to-right.active .hovers-content { right: 0; } .hovers-sweep-to-left .hovers-content { left: 100%; } .hovers-sweep-to-left:hover .hovers-content, .hovers-sweep-to-left.active .hovers-content { left: 0; } .hovers-sweep-to-bottom .hovers-content { top: initial; bottom: 100%; } .hovers-sweep-to-bottom:hover .hovers-content, .hovers-sweep-to-bottom.active .hovers-content { bottom: 0; } .hovers-sweep-to-top .hovers-content { top: 100%; } .hovers-sweep-to-top:hover .hovers-content, .hovers-sweep-to-top.active .hovers-content { top: 0; } .hovers-radial-out .hovers-content, .hovers-radial-in:hover .hovers-content, .hovers-radial-in.active .hovers-content { opacity: 0; } .hovers-radial-in .hovers-content, .hovers-radial-out:hover .hovers-content, .hovers-radial-out.active .hovers-content { opacity: 1; } /* 默认em */ .hovers-border, .hovers-trim, .hovers-ripple-out, .hovers-ripple-in, .hovers-outline-out, .hovers-outline-in, .hovers-reveal { font-size: 160px; line-height: 16px; } /* 内边框滑出 */ .hovers-border, .hovers-trim { position: relative; top: 0; left: 0; transition: all 0.3s; } .hovers-border:before { content: ''; width: 100%; height: 100%; position: absolute; top: 0; left: 0; box-sizing: border-box; transition: inherit; border-width: calc(0.0625em * 0.6); border-color: inherit; border-style: solid; border-radius: inherit; opacity: 0; } .hovers-border:hover:before, .hovers-border.active:before { opacity: 1; } /* 带边距内边框 */ .hovers-trim:before { content: ''; position: absolute; top: calc(0.0625em * 0.4); left: calc(0.0625em * 0.4); bottom: calc(0.0625em * 0.4); right: calc(0.0625em * 0.4); transition: inherit; border-width: calc(0.0625em * 0.6); border-color: inherit; border-style: solid; opacity: 0; border-radius: inherit; } .hovers-trim:hover:before, .hovers-trim.active:before { opacity: 1; } /* 边框飞出与飞入 */ .hovers-ripple-out, .hovers-ripple-in, .hovers-outline-out, .hovers-outline-in, .hovers-reveal { animation-duration: 0.7s; animation-timing-function: ease-out; transition: all 0.3s; } .hovers-ripple-out:before, .hovers-ripple-in:before, .hovers-outline-out:before, .hovers-outline-in:before, .hovers-reveal:before { content: ''; position: absolute; top: 0; right: 0; bottom: 0; left: 0; animation: inherit; transition: inherit; border-width: calc(0.0625em * 0.6); border-color: inherit; border-style: solid; border-radius: inherit; } .hovers-ripple-out:before { opacity: 0; } .hovers-ripple-in:before { top: calc(-0.0625em * 1.2); right: calc(-0.0625em * 1.2); bottom: calc(-0.0625em * 1.2); left: calc(-0.0625em * 1.2); opacity: 0; } .hovers-outline-out:before { opacity: 0; } .hovers-outline-out:before { top: calc(-0.0625em * 1.6); right: calc(-0.0625em * 1.6); bottom: calc(-0.0625em * 1.6); left: calc(-0.0625em * 1.6); opacity: 0; } .hovers-reveal:before { border-width: 0; opacity: 0; } @keyframes ripple-out { 50% { opacity: 1; } 100% { top: calc(-0.0625em * 1.2); right: calc(-0.0625em * 1.2); bottom: calc(-0.0625em * 1.2); left: calc(-0.0625em * 1.2); opacity: 0; } } .hovers-ripple-out:hover:before, .hovers-ripple-out.active:before { animation-name: ripple-out; } @keyframes ripple-in { 50% { opacity: 1; } 100% { top: 0; right: 0; bottom: 0; left: 0; opacity: 0; } } .hovers-ripple-in:hover:before, .hovers-ripple-in.active:before { animation-name: ripple-in; } .hovers-outline-out:hover:before, .hovers-outline-in:hover:before, .hovers-outline-out.active:before, .hovers-outline-in:hover:before { top: calc(-0.0625em * 0.8); right: calc(-0.0625em * 0.8); bottom: calc(-0.0625em * 0.8); left: calc(-0.0625em * 0.8); opacity: 1; } .hovers-reveal:hover:before, .hovers-reveal.active:before { transform: translateY(0); border-width: calc(0.0625em * 0.4); opacity: 1; } /* 圆角化 */ .hovers-round-corners { overflow: hidden; } .hovers-round-corners:hover, .hovers-round-corners.active { border-radius: 0.0625em; } /* 重叠:翻转切换 */ .hover-turn { position: relative; transform: translateZ(1px); } .hover-turn-before, .hover-turn-after { position: absolute; top: 0; left: 0; } @keyframes hover-turn { from { transform: rotateY(-90deg); } 50% { transform: scale(1.2); } to { transform: rotateY(0); } } .hover-turn:not(:hover) .hover-turn-before, .hover-turn:hover .hover-turn-after { animation: hover-turn 0.5s; } .hover-turn:hover .hover-turn-before, .hover-turn:not(:hover) .hover-turn-after { opacity: 0; } /* [[Category:在模板名字空间下的CSS页面]] */ /* .colormu_toggle_on是为了黑幕开关(MediaWiki:Gadget-heimu-toggle.js)做适配。 .colormu-drk、.colormu-bri分别是暗色背景和亮色背景, 暗色背景的文字通常是浅色,在半隐背景后,颜色需要变成深色。 */ .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; } /* for T:Coloredlink in T:彩幕 */ .colormu:not(:hover):not(:active):not(.colormu_toggle_on) a>span { color: transparent !important; } /* for T:彩幕 in link */ a .colormu-bri { color: inherit; } a:hover .colormu>span, a:active .colormu>span, /* and for MediaWiki:Gadget-heimu-toggle.js */ .colormu-drk.colormu_toggle_on, .colormu_toggle_on>span, .colormu-drk.colormu_toggle_on a>span { color: inherit !important; }
返回
Common.css
。
工具
链入页面
相关更改
特殊页面
页面信息
Cargo数据