MediaWiki:Common.css
注意:在发布之后,您可能需要清除浏览器缓存才能看到所作出的更改的影响。
- Firefox或Safari:按住Shift的同时单击刷新,或按Ctrl-F5或Ctrl-R(Mac为⌘-R)
- Google Chrome:按Ctrl-Shift-R(Mac为⌘-Shift-R)
- Edge:按住Ctrl的同时单击刷新,或按Ctrl-F5。
#p-logo a {
background-size: contain !important;
background-position: center !important;
width: 135px !important;
height: 135px !important;
}
body {
background: url('/resources/assets/wikibackground.jpg') no-repeat center center fixed;
background-size: cover;
}
/* 让阅读框半透明 */
#content {
background: rgba(255, 255, 255, 0.7); /* 70% 不透明度 */
border-radius: 10px; /* 圆角 */
padding: 20px;
backdrop-filter: blur(5px); /* 模糊背景 */
box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.2); /* 轻微阴影 */
}
/* 让侧边栏也变透明 */
#mw-panel {
background: rgba(255, 255, 255, 0.6); /* 60% 透明度 */
backdrop-filter: blur(3px);
}
/* 让页脚变透明 */
#footer {
background: rgba(255, 255, 255, 0.5);
}
/* 黑幕效果 */
.hidden-text {
background-color: black;
color: black;
transition: color 0.3s ease;
cursor: pointer;
}
.hidden-text:hover {
color: white;
}
/* 滚动容器样式 */
.scroll-container {
overflow: hidden;
width: 100%;
white-space: nowrap;
}
/* 滚动文字样式 */
.scroll-text {
display: inline-block;
animation: scrollLeft 10s linear infinite;
}
/* 从右到左滚动动画 */
@keyframes scrollLeft {
0% { transform: translateX(100vw); } /* 起始位置:右侧外部 */
100% { transform: translateX(-100%); } /* 结束位置:左侧外部 */
}
/* 基础样式重置(兼容维基默认样式) */
.otm-outside-box, .otm-content, .otm-text-area {
margin: 0;
padding: 0;
box-sizing: border-box;
}
body {
--color-base: #202122;
--color-accent: #FB7299; /* 哲♂学粉主色调 */
--color-link: #0645ad;
--color-link-dark: #81a2be;
--bg-base: #f8f9fa;
--bg-card: #ffffff;
--bg-card-dark: #2a2e34;
--border-color: #c8ccd1;
--border-color-dark: #4a4e54;
--shadow-light: 0 1px 3px rgba(0,0,0,0.1);
--shadow-dark: 0 1px 3px rgba(0,0,0,0.3);
--rank-opacity: 0.12; /* 排名文字透明度优化 */
}
/* 暗色模式变量覆盖 */
body.dark-mode {
--color-base: #eaecf0;
--color-link: #81a2be;
--color-link-dark: #0645ad;
--bg-base: #202122;
--bg-card: #2a2e34;
--bg-card-dark: #202122;
--border-color: #4a4e54;
--border-color-dark: #3a3e44;
--rank-opacity: 0.18;
}
/* 排行榜卡片核心样式(flex布局优化) */
.otm-outside-box {
display: flex;
align-items: center;
padding: 20px;
margin: 12px 0;
box-shadow: var(--shadow-light);
border: 1px solid var(--border-color);
border-radius: 12px; /* 圆角放大更现代 */
background: var(--bg-card);
position: relative;
max-width: 850px; /* 限制最大宽度,避免过宽 */
transition: all 0.2s ease;
}
.otm-outside-box:hover {
box-shadow: 0 4px 8px rgba(0,0,0,0.15);
transform: translateY(-2px);
}
/* 隐藏锚点(不占用布局空间) */
.otm-anchor-hidden {
visibility: hidden;
height: 0;
overflow: hidden;
position: absolute;
}
/* 排名样式(优化定位,避免重叠) */
.otm-ranking {
position: absolute;
right: 30px;
top: 50%;
transform: translateY(-50%); /* 垂直居中 */
font-size: 90px;
font-weight: 900;
color: var(--color-base);
opacity: var(--rank-opacity);
line-height: 1;
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif; /* 移除外部字体依赖 */
user-select: none;
z-index: 0;
}
/* 核心内容容器(横向排列,控制间距) */
.otm-content {
display: flex;
align-items: center;
width: 100%;
gap: 15px; /* 替代margin,更灵活 */
position: relative;
z-index: 1; /* 确保内容在排名上方 */
}
/* 视频封面(优化圆角和阴影) */
.otm-image {
border-radius: 8px;
width: 208px;
height: 130px;
overflow: hidden;
flex-shrink: 0; /* 防止封面缩小 */
box-shadow: 0 2px 6px rgba(0,0,0,0.1);
}
.otm-image img {
width: 100%;
height: 100%;
object-fit: cover;
transition: transform 0.3s ease;
}
.otm-image:hover img {
transform: scale(1.05); /* hover放大效果 */
}
/* 文本信息区(垂直排列,控制溢出) */
.otm-text-area {
display: flex;
flex-direction: column;
justify-content: center;
flex: 1; /* 占满剩余空间 */
overflow: hidden;
}
/* 标题样式(优化行高和溢出) */
.otm-title {
font-size: 24px;
font-weight: 700;
line-height: 1.3;
margin: 0 0 8px 0;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
}
.otm-title a {
color: var(--color-base) !important;
text-decoration: none !important;
transition: color 0.2s ease;
}
.otm-title a:hover {
color: var(--color-accent) !important; /* hover变色,契合主题 */
}
/* AID标签样式(优化配色和圆角) */
.otm-aid-box {
background: var(--color-accent);
border-radius: 20px; /* 更圆润 */
color: #ffffff !important;
padding: 4px 12px;
font-size: 13px;
display: inline-block;
transition: background 0.2s ease;
}
.otm-aid-box a {
color: #ffffff !important;
text-decoration: none !important;
background: none !important;
padding: 0 !important;
}
.otm-aid-box:hover {
background: #f95383;
}
/* 分数样式(优化定位和字体) */
.otm-score {
font-size: 64px;
font-weight: 800;
color: var(--color-base);
opacity: var(--rank-opacity);
line-height: 1;
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
user-select: none;
margin-left: auto; /* 右对齐 */
padding-left: 20px;
}
.otm-score-unit {
font-size: 14px;
font-weight: 500;
text-transform: uppercase;
display: inline-block;
vertical-align: top;
margin-left: 4px;
margin-top: 10px;
}
/* 链接基础样式(统一交互) */
a {
color: var(--color-link);
text-decoration: none;
transition: color 0.2s ease;
}
a:hover {
color: var(--color-accent);
text-decoration: underline;
}
body.dark-mode a {
color: var(--color-link-dark);
}
body.dark-mode a:hover {
color: var(--color-accent);
}
/* 响应式布局优化(分阶段适配) */
/* 平板设备(768-1024px) */
@media screen and (max-width: 1024px) {
.otm-outside-box {
padding: 15px;
margin: 10px 0;
}
.otm-ranking {
font-size: 70px;
right: 25px;
}
.otm-score {
font-size: 50px;
}
.otm-title {
font-size: 22px;
}
}
/* 手机设备(≤768px) */
@media screen and (max-width: 768px) {
.otm-outside-box {
padding: 12px;
margin: 8px 0;
flex-direction: column; /* 垂直排列 */
align-items: flex-start;
}
.otm-content {
width: 100%;
flex-direction: column;
align-items: flex-start;
gap: 10px;
}
.otm-image {
width: 100%;
height: 160px; /* 适配手机宽度,增加高度 */
display: block !important; /* 不隐藏封面,提升体验 */
}
.otm-text-area {
width: 100%;
}
.otm-title {
font-size: 20px;
white-space: normal; /* 允许换行,避免截断过多 */
display: -webkit-box;
-webkit-line-clamp: 2; /* 最多2行 */
-webkit-box-orient: vertical;
}
.otm-aid-box {
font-size: 12px;
padding: 3px 10px;
}
.otm-ranking {
font-size: 50px;
right: 15px;
top: 15px;
}
.otm-score {
font-size: 40px;
margin-left: 0;
padding-left: 0;
margin-top: 8px;
}
}
/* 小屏手机(≤375px) */
@media screen and (max-width: 375px) {
.otm-image {
height: 130px;
}
.otm-title {
font-size: 18px;
-webkit-line-clamp: 1; /* 1行显示 */
}
.otm-ranking {
font-size: 40px;
}
.otm-score {
font-size: 35px;
}
}