Files
BlackFruit-UI/css/nav-mega-menu.css
yiqiu f5b2225bd8
Some checks failed
continuous-integration/drone/push Build is failing
style: 顶部导航下拉菜单改为 akile.io 深色毛玻璃风格
- Header 改为深色半透明背景 rgba(10,12,22,0.92) + backdrop-filter
- 导航文字改白色,hover 下划线改蓝色
- nav-mega-menu.css 完整重写:纯行 hover 风格,去掉卡片 border
- 下拉面板背景 rgba(14,16,26,0.98),柔和阴影
- 登录下拉菜单同步改为深色风格
- 三级菜单动画改为 fadeIn+slideUp 组合
- 清除 css/common.css 中的旧样式覆盖冲突
2026-03-18 17:42:02 +08:00

303 lines
5.9 KiB
CSS
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
/* ============================================================
顶部导航下拉菜单样式 - akile.io 深色毛玻璃风格
============================================================ */
/* 下拉容器 */
.nav-cont {
position: absolute;
top: 100%;
left: 0;
width: 100%;
background: rgba(14, 16, 26, 0.98);
backdrop-filter: blur(20px);
-webkit-backdrop-filter: blur(20px);
border-top: 1px solid rgba(255, 255, 255, 0.06);
box-shadow: 0 20px 48px rgba(0, 0, 0, 0.6);
z-index: 1000;
overflow: hidden;
transition: height 0.25s ease-out;
height: 0;
}
/* Mega Menu 容器 */
.nav-cont-menu.mega-menu {
display: none;
height: 100%;
}
/* inner 布局 */
.nav-content {
display: flex;
max-width: 1400px;
margin: 0 auto;
height: 100%;
min-height: 320px;
padding: 0;
}
/* ── 左侧二级菜单栏 ── */
.nav-left-sidebar {
width: 220px;
flex-shrink: 0;
background: rgba(255, 255, 255, 0.03);
border-right: 1px solid rgba(255, 255, 255, 0.06);
padding: 16px 8px;
overflow-y: auto;
}
/* 二级分类项 */
.nav-category-item {
display: flex;
align-items: center;
gap: 10px;
padding: 11px 14px;
color: rgba(203, 213, 225, 0.75);
font-size: 14px;
font-weight: 500;
border-radius: 8px;
cursor: pointer;
transition: background 0.15s ease, color 0.15s ease;
user-select: none;
}
.nav-category-item:hover,
.nav-category-item.active {
background: rgba(59, 130, 246, 0.12);
color: #93C5FD;
}
.nav-category-item .category-icon {
width: 20px;
height: 20px;
flex-shrink: 0;
display: flex;
align-items: center;
justify-content: center;
}
.nav-category-item .category-icon img {
width: 100%;
height: 100%;
object-fit: contain;
}
.nav-category-name {
font-weight: 500;
}
.nav-category-desc {
font-size: 12px;
color: rgba(148, 163, 184, 0.6);
margin-top: 2px;
display: block;
}
/* ── 右侧三级菜单区域 ── */
.nav-right-content {
flex: 1;
padding: 20px 28px;
overflow-y: auto;
}
/* 三级菜单面板 */
.nav-third-panel {
display: none;
}
.nav-third-panel.active {
display: block;
animation: navPanelFadeIn 0.2s ease;
}
/* 三级菜单标题 */
.nav-third-title {
font-size: 13px;
font-weight: 600;
color: rgba(148, 163, 184, 0.6);
text-transform: uppercase;
letter-spacing: 0.08em;
margin-bottom: 12px;
padding-bottom: 10px;
border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}
/* 三级菜单网格 */
.nav-third-grid {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 4px 8px;
}
/* 三级菜单项容器 */
.nav-cont-menu .nav-third-item {
margin: 0;
padding: 0;
}
/* 三级菜单链接 - akile 风格:纯行 hover无卡片 */
.nav-cont-menu .nav-third-grid .nav-third-link,
.nav-third-panel .nav-third-link {
display: flex;
align-items: center;
gap: 10px;
width: 100%;
padding: 10px 12px;
border-radius: 8px;
color: rgba(226, 232, 240, 0.85);
font-size: 14px;
font-weight: 500;
text-decoration: none;
transition: background 0.15s ease, color 0.15s ease;
box-sizing: border-box;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
/* 无边框、无卡片背景 */
background: transparent;
border: none;
}
.nav-cont-menu .nav-third-grid .nav-third-link::before,
.nav-third-panel .nav-third-link::before {
content: none; /* 移除旧的 箭头前缀 */
}
.nav-cont-menu .nav-third-grid .nav-third-link:hover,
.nav-third-panel .nav-third-link:hover {
background: rgba(255, 255, 255, 0.06);
color: #fff;
}
/* ── 国旗图标 ── */
.country-flag {
width: 22px;
height: 16px;
flex-shrink: 0;
vertical-align: middle;
object-fit: cover;
border-radius: 3px;
box-shadow: 0 1px 4px rgba(0, 0, 0, 0.4);
}
/* ── 只有二级菜单时的横向网格(无三级) ── */
.nav-simple-grid {
display: grid;
grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
gap: 4px 8px;
padding: 20px 28px;
width: 100%;
max-width: 1400px;
margin: 0 auto;
box-sizing: border-box;
}
.nav-simple-grid .nav-simple-item {
display: flex;
align-items: center;
gap: 12px;
padding: 11px 14px;
border-radius: 8px;
color: rgba(226, 232, 240, 0.85);
text-decoration: none;
font-size: 14px;
font-weight: 500;
transition: background 0.15s ease, color 0.15s ease;
/* 无卡片边框背景 */
background: transparent;
border: none;
}
.nav-simple-grid .nav-simple-item:hover {
background: rgba(255, 255, 255, 0.06);
color: #fff;
}
.nav-simple-icon {
width: 28px;
height: 28px;
flex-shrink: 0;
}
.nav-simple-icon img {
width: 100%;
height: 100%;
object-fit: contain;
}
.nav-simple-title {
font-size: 14px;
font-weight: 500;
color: inherit;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
.nav-simple-desc {
font-size: 12px;
color: rgba(148, 163, 184, 0.65);
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
margin-top: 2px;
}
/* ── 菜单底部「更多」区域 ── */
.nav-menu-footer {
border-top: 1px solid rgba(255, 255, 255, 0.06);
padding: 12px 28px;
}
.nav-menu-footer a {
font-size: 13px;
color: rgba(148, 163, 184, 0.7);
text-decoration: none;
transition: color 0.15s ease;
}
.nav-menu-footer a:hover {
color: #93C5FD;
}
/* ── 空菜单占位 ── */
.nav-cont-menu.nav-cont-empty {
display: none;
}
/* ── 动画 ── */
@keyframes navPanelFadeIn {
from {
opacity: 0;
transform: translateX(8px);
}
to {
opacity: 1;
transform: translateX(0);
}
}
/* ── 响应式 ── */
@media (max-width: 768px) {
.nav-cont {
display: none !important;
}
.nav-content {
flex-direction: column;
min-height: auto;
}
.nav-left-sidebar {
width: 100%;
border-right: none;
border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}
.nav-right-content {
padding: 16px;
}
.nav-third-grid {
grid-template-columns: 1fr;
}
}