.section-content { padding: 80px 20px; max-width: 1440px; margin: 0 auto; } .section-title .section-desc { margin-top: 16px; font-size: 16px; color: rgba(0, 0, 0, 0.6); } .section-bg { color: #fff; } .section-bg .section-title .section-desc { color: rgba(255, 255, 255, 0.9); } .section-p { padding: 0 20px; } .common-empty { width: 100%; min-height: 500px; display: flex; align-items: center; justify-content: center; flex-direction: column; } .common-empty img { max-width: 100%; max-height: 100%; display: block; } .common-empty .des { font-size: 16px; color: rgba(0, 0, 0, 0.6); } .section-w { max-width: 100%; } .section-title { text-align: center; } .document .section-content { max-width: unset; } #header { position: sticky; top: 0; background: #fff; z-index: 888; } /* ===== HEADER STYLES - CTG Design ===== */ .main-header { background: #fff; box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1); position: sticky; top: 0; z-index: 1000; margin: 0; margin-bottom: 0 !important; padding: 0; } .navbar { padding: 0; margin: 0; margin-bottom: 0 !important; } .nav-container { max-width: 1200px; margin: 0 auto; padding: 0 20px; display: flex; align-items: center; justify-content: space-between; height: 70px; } /* Brand/Logo */ .nav-brand { display: flex; align-items: center; gap: 20px; } .brand-link { display: flex; align-items: center; text-decoration: none; } .brand-logo { height: 40px; width: auto; } .mobile-menu-toggle { display: none; flex-direction: column; background: none; border: none; cursor: pointer; padding: 5px; } .mobile-menu-toggle span { width: 25px; height: 3px; background: #333; margin: 3px 0; transition: 0.3s; } /* Navigation Menu */ .nav-menu { flex: 1; display: flex; justify-content: center; } .nav-list { display: flex; list-style: none; margin: 0; padding: 0; gap: 40px; } .nav-item { position: relative; } .nav-link { color: #333; text-decoration: none; font-weight: 500; font-size: 16px; padding: 25px 0; display: block; transition: color 0.3s ease; } .nav-link:hover { color: #3861fb; } /* Mega Menu */ .has-dropdown:hover .mega-menu { opacity: 1; visibility: visible; transform: translateX(-50%); } .mega-menu { position: absolute; top: 100%; left: 50%; transform: translateX(-50%); background: #fff; box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15); border-radius: 8px; padding: 20px; min-width: 500px; opacity: 0; visibility: hidden; transition: all 0.3s ease; z-index: 1001; margin-top: 8px; border: 1px solid rgba(0, 0, 0, 0.08); } .mega-menu-content { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 8px; } .mega-menu-item { display: flex; align-items: center; gap: 12px; padding: 12px 16px; border-radius: 6px; text-decoration: none; color: #333; transition: all 0.2s ease; border: 1px solid transparent; } .mega-menu-item:hover { background: #f8f9fa; color: #2f7df6; border-color: rgba(47, 125, 246, 0.1); } .menu-icon { width: 24px; height: 24px; flex-shrink: 0; object-fit: contain; } .menu-text h4 { font-size: 14px; font-weight: 600; margin: 0 0 2px 0; color: black; line-height: 1.3; } .menu-text p { font-size: 12px; color: #666; margin: 0; color: black; line-height: 1.3; } /* Navigation Actions */ .nav-actions { display: flex; align-items: center; gap: 16px; } .nav-action-btn { padding: 10px 20px; border-radius: 6px; text-decoration: none; font-weight: 500; font-size: 14px; transition: all 0.3s ease; } .contact-btn { color: #3861fb; border: 1px solid #3861fb; background: transparent; } .contact-btn:hover { background: #3861fb; color: #fff; } .client-btn { background: #3861fb; color: #fff; border: 1px solid #3861fb; } .client-btn:hover { background: #2746b6; border-color: #2746b6; color: #fff; /* keep text readable on dark background */ text-decoration: none; } /* Ensure top-right nav action buttons never show underline and keep readable text */ .nav-action-btn:hover, .nav-action-btn:focus, .nav-action-btn:active { text-decoration: none; } /* 下拉菜单样式 */ .nav-cont { position: absolute; top: 100%; left: 0; right: 0; background: #fff; box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12); overflow: hidden; height: 0; transition: height 0.3s ease; z-index: 1000; border-top: 1px solid #f0f0f0; pointer-events: none; } .nav-cont.show { pointer-events: auto; } .nav-cont .section-content { max-width: 1200px; margin: 0 auto; padding: 32px 24px; } .nav-content { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 20px; max-width: 100%; } .nav-content a { text-decoration: none; color: inherit; display: block; } .nav-cont .nav-cont-menu { display: none; } .nav-cont .nav-cont-menu.show { display: block; } .nav-cont .nav-cont-empty { display: none; } .nav-item-box { display: flex; align-items: center; padding: 20px; border-radius: 12px; transition: all 0.2s ease; border: 1px solid transparent; min-height: 100px; background: #fff; } .nav-item-box:hover { background: #f8f9fa; border-color: #e9ecef; transform: translateY(-2px); box-shadow: 0 4px 16px rgba(0, 0, 0, 0.08); } .nav-item-box:hover .title { color: #2f7df6; } .nav-item-box img { width: 48px; height: 48px; margin-right: 20px; object-fit: contain; } .nav-item-box .item-box-title { flex: 1; display: flex; flex-direction: column; gap: 6px; } .nav-item-box .item-box-title .title { font-size: 18px; font-weight: 600; color: #333; margin: 0; transition: color 0.2s ease; } .nav-item-box .item-box-title .desc { font-size: 14px; color: #666; margin: 0; line-height: 1.4; } /* 登录状态样式 */ .nav-header .login-in { display: flex; align-items: center; gap: 10px; position: relative; cursor: pointer; padding: 8px 16px; border-radius: 6px; transition: background 0.2s ease; } .nav-header .login-in:hover { background: #f8f9fa; } .nav-header .login-in::after { content: ""; width: 0; height: 0; border-left: 4px solid transparent; border-right: 4px solid transparent; border-top: 4px solid #666; transition: all 0.2s ease; } .nav-header .login-in:hover::after { transform: rotate(180deg); } .nav-header .login-in:hover .login-menu { display: block; } .nav-header .login-in .head-img { width: 36px; height: 36px; border-radius: 50%; background: #2f7df6; color: #fff; display: flex; align-items: center; justify-content: center; font-size: 14px; font-weight: 600; } .nav-header .login-in .name { font-size: 14px; color: #333; font-weight: 500; } .nav-header .login-in .login-menu { position: absolute; top: 100%; right: 0; background: #fff; border-radius: 8px; box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12); padding: 8px 0; min-width: 180px; display: none; z-index: 1000; border: 1px solid #f0f0f0; } .nav-header .login-in .login-menu .login-menu-item { padding: 12px 16px; color: #333; font-size: 14px; transition: background 0.2s ease; display: flex; align-items: center; justify-content: space-between; } .nav-header .login-in .login-menu .login-menu-item:hover { background: #f8f9fa; color: #2f7df6; } .nav-header .login-in .login-menu .login-menu-item .real-name { font-size: 12px; color: #28a745; font-weight: 500; } .nav-header .login-in .login-menu .login-menu-item .no-real-name { font-size: 12px; color: #dc3545; font-weight: 500; } /* 底部导航栏 */ /* ===== FOOTER STYLES - CTG Exact Design ===== */ .main-footer { background: linear-gradient(135deg, #1e293b 0%, #0f172a 100%); color: #fff; padding: 80px 0 0 0; margin-top: auto; position: relative; overflow: hidden; border-top: 1px solid rgba(255, 255, 255, 0.08); } /* CTG Footer background pattern */ .main-footer::before { content: ""; position: absolute; top: 0; left: 0; right: 0; bottom: 0; background: radial-gradient( circle at 25% 25%, rgba(59, 130, 246, 0.08) 0%, transparent 50% ), radial-gradient( circle at 75% 75%, rgba(99, 102, 241, 0.06) 0%, transparent 50% ), linear-gradient(180deg, transparent 0%, rgba(15, 23, 42, 0.8) 100%); z-index: 1; } .footer-container { max-width: 1200px; margin: 0 auto; padding: 0 20px; display: grid; grid-template-columns: 2fr 1fr 1fr; gap: 60px; position: relative; z-index: 2; align-items: start; } /* Left: Footer Navigation Section */ .footer-nav-section { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 40px; } /* Center: Friendly Links Section */ .footer-links-section-inline { padding: 0; } .footer-links-section-inline .footer-title { font-size: 16px; font-weight: 600; color: #ffffff; margin: 0 0 20px 0; text-transform: none; letter-spacing: 0.025em; } .footer-friendly-links { display: flex; flex-direction: column; gap: 12px; } /* 友情链接样式 - 覆盖Bootstrap默认样式 */ .footer-links-section-inline .footer-friendly-links .friendly-link-item, .footer-friendly-links .friendly-link-item, .friendly-link-item { color: #94a3b8 !important; text-decoration: none !important; font-size: 14px; line-height: 1.5; transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1); position: relative; padding: 4px 0; border-bottom: none !important; } .footer-links-section-inline .footer-friendly-links .friendly-link-item::before, .footer-friendly-links .friendly-link-item::before, .friendly-link-item::before { content: ""; position: absolute; bottom: 0; left: 0; width: 0; height: 1px; background: #60a5fa; transition: width 0.3s ease; } .footer-links-section-inline .footer-friendly-links .friendly-link-item:hover, .footer-links-section-inline .footer-friendly-links .friendly-link-item:focus, .footer-links-section-inline .footer-friendly-links .friendly-link-item:active, .footer-friendly-links .friendly-link-item:hover, .footer-friendly-links .friendly-link-item:focus, .footer-friendly-links .friendly-link-item:active, .friendly-link-item:hover, .friendly-link-item:focus, .friendly-link-item:active { color: #ffffff !important; text-decoration: none; /* remove underline on hover/focus/active */ border-bottom: none !important; transform: translateX(4px); } .footer-links-section-inline .footer-friendly-links .friendly-link-item:hover::before, .footer-friendly-links .friendly-link-item:hover::before, .friendly-link-item:hover::before { width: 100%; } /* 使用与footer-link-item相同的成功模式 */ a.friendly-link-item, a.friendly-link-item:link, a.friendly-link-item:visited { text-decoration: none; border-bottom: none; } a.friendly-link-item:hover, a.friendly-link-item:focus, a.friendly-link-item:active { text-decoration: none; /* remove underline on hover/focus/active */ border-bottom: none; } /* 确保伪元素样式正常工作 */ a.friendly-link-item::before { content: ""; position: absolute; bottom: 0; left: 0; width: 0; height: 1px; background: #60a5fa; transition: width 0.3s ease; } a.friendly-link-item:hover::before { width: 100%; } /* Right: Contact Section */ .footer-contact-section { padding: 0; } .footer-contact-section .footer-title { font-size: 16px; font-weight: 600; color: #ffffff; margin: 0 0 20px 0; text-transform: none; letter-spacing: 0.025em; } .contact-info { margin-bottom: 24px; } .contact-item { margin-bottom: 12px; } .contact-label { color: #94a3b8; font-size: 14px; line-height: 1.5; } .footer-logo-section { margin-top: 20px; } .footer-logo-img { height: 32px; width: auto; filter: brightness(1.1); } .social-link { width: 40px; height: 40px; background: rgba(255, 255, 255, 0.08); border-radius: 8px; display: flex; align-items: center; justify-content: center; text-decoration: none; transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1); border: 1px solid rgba(255, 255, 255, 0.1); } .social-link:hover { background: rgba(59, 130, 246, 0.2); border-color: rgba(59, 130, 246, 0.3); transform: translateY(-2px); } .social-link svg { width: 18px; height: 18px; fill: #cbd5e1; transition: fill 0.3s ease; } .social-link:hover svg { fill: #60a5fa; } /* Footer Column Styles */ .footer-column h6 { font-size: 16px; font-weight: 600; color: #ffffff; margin: 0 0 28px 0; text-transform: none; letter-spacing: 0.025em; } .footer-links { list-style: none; padding: 0; margin: 0; } .footer-links li { margin-bottom: 18px; } .footer-links a { color: #94a3b8; text-decoration: none; font-size: 15px; line-height: 1.5; transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1); position: relative; } .footer-links a::before { content: ""; position: absolute; bottom: -2px; left: 0; width: 0; height: 1px; background: #60a5fa; transition: width 0.3s ease; } .footer-links a:hover, .footer-links a:focus, .footer-links a:active { color: #ffffff; text-decoration: none; /* remove underline on hover/focus/active */ transform: translateX(4px); } .footer-links a:hover::before { width: 100%; } /* Footer Bottom - CTG Style */ .footer-bottom { border-top: 1px solid rgba(255, 255, 255, 0.1); padding: 32px 0; margin-top: 60px; background: rgba(15, 23, 42, 0.5); } .footer-bottom .footer-container { display: flex; justify-content: space-between; align-items: center; flex-wrap: nowrap; gap: 32px; } .footer-copyright p { margin: 0 0 6px 0; color: #94a3b8; font-size: 14px; line-height: 1.5; } .footer-legal { display: flex; gap: 24px; flex-wrap: wrap; align-items: center; } .footer-legal a { color: #94a3b8; text-decoration: none; font-size: 14px; transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1); white-space: nowrap; padding: 4px 0; position: relative; } .footer-legal a::after { content: ""; position: absolute; bottom: 0; left: 0; width: 0; height: 1px; background: #60a5fa; transition: width 0.3s ease; } .footer-legal a:hover { color: #ffffff; } .footer-legal a:hover::after { width: 100%; } .footer-legal span { color: #94a3b8; font-size: 14px; white-space: nowrap; padding: 4px 0; } /* Friendly Links Section - CTG Style */ .footer-links-section { border-top: 1px solid rgba(255, 255, 255, 0.1); padding: 32px 0; background: rgba(15, 23, 42, 0.3); } .footer-links-title { font-size: 16px; font-weight: 600; color: #ffffff; margin: 0 0 24px 0; text-align: center; letter-spacing: 0.025em; } .footer-links-list { display: flex; flex-wrap: wrap; justify-content: center; gap: 16px; list-style: none; padding: 0; margin: 0; } .footer-link-item { color: #94a3b8; text-decoration: none; font-size: 14px; font-weight: 500; padding: 10px 18px; border-radius: 8px; transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1); border: 1px solid rgba(255, 255, 255, 0.12); background: rgba(255, 255, 255, 0.06); position: relative; overflow: hidden; } .footer-link-item::before { content: ""; position: absolute; top: 0; left: -100%; width: 100%; height: 100%; background: linear-gradient( 90deg, transparent, rgba(59, 130, 246, 0.1), transparent ); transition: left 0.5s ease; } .footer-link-item:hover, .footer-link-item:focus, .footer-link-item:active { color: #ffffff; background: rgba(59, 130, 246, 0.1); border-color: rgba(59, 130, 246, 0.3); transform: translateY(-3px); box-shadow: 0 8px 25px rgba(59, 130, 246, 0.15); text-decoration: none; /* remove underline on hover/focus/active */ } .footer-link-item:hover::before { left: 100%; } /* Footer Contact Icons - CTG Style */ .footer-contact-icons { display: flex; gap: 12px; align-items: center; } .contact-icon { width: 44px; height: 44px; background: rgba(255, 255, 255, 0.08); border: 1px solid rgba(255, 255, 255, 0.12); border-radius: 10px; display: flex; align-items: center; justify-content: center; text-decoration: none; transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1); position: relative; overflow: hidden; } .contact-icon::before { content: ""; position: absolute; top: 0; left: -100%; width: 100%; height: 100%; background: linear-gradient( 90deg, transparent, rgba(59, 130, 246, 0.2), transparent ); transition: left 0.5s; } .contact-icon:hover::before { left: 100%; } .contact-icon:hover { background: rgba(59, 130, 246, 0.15); border-color: rgba(59, 130, 246, 0.3); transform: translateY(-3px); box-shadow: 0 8px 25px rgba(59, 130, 246, 0.2); } .contact-icon svg { width: 20px; height: 20px; fill: #94a3b8; transition: fill 0.3s ease; position: relative; z-index: 1; } .contact-icon:hover svg { fill: #60a5fa; } /* Loading state for friendly links */ .footer-links-loading { display: flex; justify-content: center; align-items: center; padding: 20px; color: #9ca3af; font-size: 13px; } .footer-links-loading::before { content: ""; width: 16px; height: 16px; border: 2px solid rgba(255, 255, 255, 0.1); border-top: 2px solid #9ca3af; border-radius: 50%; animation: spin 1s linear infinite; margin-right: 8px; } /* Staggered animation for friendly links */ .footer-link-item { opacity: 0; transform: translateY(10px); animation: fadeInUp 0.4s ease forwards; } .footer-link-item:nth-child(1) { animation-delay: 0.1s; } .footer-link-item:nth-child(2) { animation-delay: 0.2s; } .footer-link-item:nth-child(3) { animation-delay: 0.3s; } .footer-link-item:nth-child(4) { animation-delay: 0.4s; } .footer-link-item:nth-child(5) { animation-delay: 0.5s; } .footer-link-item:nth-child(6) { animation-delay: 0.6s; } .footer-contact-icons { display: flex; gap: 12px; align-items: center; } .contact-icon { width: 36px; height: 36px; background: rgba(255, 255, 255, 0.1); border-radius: 50%; display: flex; align-items: center; justify-content: center; color: #bfc4cc; text-decoration: none; transition: all 0.3s ease; } .contact-icon:hover { background: #3861fb; color: #fff; } /* ===== RESPONSIVE DESIGN ===== */ @media (max-width: 1024px) { .nav-container { padding: 0 16px; } .nav-list { gap: 24px; } .mega-menu { min-width: 400px; } .mega-menu-content { grid-template-columns: 1fr; } .footer-container { grid-template-columns: 1fr; gap: 40px; } .footer-nav-section { grid-template-columns: repeat(2, 1fr); gap: 30px; } .footer-contact-section { text-align: center; } } @media (max-width: 768px) { .nav-container { height: 60px; } .brand-logo { height: 32px; } .mobile-menu-toggle { display: flex; } .nav-menu { display: none; } .nav-actions { gap: 8px; } .nav-action-btn { padding: 8px 16px; font-size: 13px; } .mega-menu { position: fixed; top: 70px; left: 0; right: 0; transform: none; min-width: auto; border-radius: 0; max-height: calc(100vh - 70px); overflow-y: auto; margin-top: 0; border: none; box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1); } .floating-actions { right: 16px; bottom: 16px; } .floating-trigger { width: 45px; height: 45px; } .floating-tooltip { display: none; } .footer-container { grid-template-columns: 1fr; gap: 32px; } .footer-nav-section { grid-template-columns: 1fr; gap: 24px; } .footer-contact-section { text-align: center; } .footer-bottom .footer-container { flex-direction: column; gap: 16px; text-align: center; } .footer-legal { flex-wrap: wrap; justify-content: center; gap: 16px; } /* Friendly links mobile */ .footer-links-section { padding: 24px 0; } .footer-links-list { gap: 16px; } .footer-link-item { font-size: 12px; padding: 4px 8px; } } @media (max-width: 480px) { .nav-container { padding: 0 12px; } .nav-actions { flex-direction: column; gap: 4px; } .nav-action-btn { padding: 6px 12px; font-size: 12px; } .footer-container { padding: 0 16px; gap: 24px; grid-template-columns: 1fr; } .footer-nav-section { gap: 20px; } .footer-contact-section { text-align: center; } .footer-legal { gap: 8px; } .footer-legal a { font-size: 12px; } /* Friendly links small screens */ .footer-links-section { padding: 20px 0; } .footer-links-title { font-size: 13px; margin-bottom: 16px; } .footer-links-list { gap: 12px; } .footer-link-item { font-size: 11px; padding: 3px 6px; } } /* Mobile menu active states */ @media (max-width: 768px) { .nav-menu.mobile-active { display: block; position: fixed; top: 60px; left: 0; right: 0; background: #fff; box-shadow: 0 4px 16px rgba(0, 0, 0, 0.1); z-index: 1000; max-height: calc(100vh - 60px); overflow-y: auto; } .nav-menu.mobile-active .nav-list { flex-direction: column; gap: 0; padding: 20px; } .nav-menu.mobile-active .nav-item { border-bottom: 1px solid #eee; } .nav-menu.mobile-active .nav-link { padding: 15px 0; } .mobile-menu-toggle.active span:nth-child(1) { transform: rotate(-45deg) translate(-5px, 6px); } .mobile-menu-toggle.active span:nth-child(2) { opacity: 0; } .mobile-menu-toggle.active span:nth-child(3) { transform: rotate(45deg) translate(-5px, -6px); } .main-header.scrolled { box-shadow: 0 4px 16px rgba(0, 0, 0, 0.15); } } .jr-tabs { width: 100px; border-radius: 5px; position: relative; } .jr-select select { border: 1px solid #ededed; border-radius: 5px; outline: none; width: 100%; height: 32px; line-height: 32px; appearance: none; padding-left: 12px; } .jr-select:after { content: "\e674"; width: 14px; height: 8px; font-size: 12px; font-family: "iconfont"; position: absolute; right: 20px; top: 15%; pointer-events: none; } .floating-item { /* border: 2px solid #0f0f0f; */ } .floating-trigger { width: 50px; height: 50px; display: flex; align-items: center; justify-content: center; text-decoration: none; transition: all 0.3s ease; } .floating-trigger:hover { transform: scale(1.1); } .floating-tooltip { position: absolute; right: 80px; top: 50%; transform: translateY(-50%); background: #ffffff; color: #fff; padding: 12px 16px; border-radius: 8px; white-space: nowrap; opacity: 0; visibility: hidden; transition: all 0.3s ease; pointer-events: none; } .floating-tooltip::after { content: ""; position: absolute; left: 100%; top: 50%; transform: translateY(-50%); border: 6px solid transparent; border-left-color: white; } .floating-item:hover .floating-tooltip { opacity: 1; visibility: visible; } .tooltip-content h5 { font-size: 14px; font-weight: 600; margin: 0 0 4px 0; } .tooltip-content p { font-size: 12px; margin: 0; opacity: 0.8; } .flex-none { flex-wrap: none !important; } #alert-container { position: fixed; top: 15%; left: 50%; transform: translateX(-50%); z-index: 9999; width: 300px; opacity: 1; transition: opacity 0.3s ease-in-out; } #footerRecord .left-info a { margin-right: 10px; } @media screen and (max-width: 1440px) { .nav-content a { width: calc(33.33% - 14px); } } /* 最终覆盖Bootstrap scaffolding.less的a:hover规则 */ .footer-links-section-inline .footer-friendly-links a.friendly-link-item, .footer-links-section-inline .footer-friendly-links a.friendly-link-item:link, .footer-links-section-inline .footer-friendly-links a.friendly-link-item:visited, .footer-links-section-inline .footer-friendly-links a.friendly-link-item:hover, .footer-links-section-inline .footer-friendly-links a.friendly-link-item:focus, .footer-links-section-inline .footer-friendly-links a.friendly-link-item:active, .footer-friendly-links a.friendly-link-item, .footer-friendly-links a.friendly-link-item:link, .footer-friendly-links a.friendly-link-item:visited, .footer-friendly-links a.friendly-link-item:hover, .footer-friendly-links a.friendly-link-item:focus, .footer-friendly-links a.friendly-link-item:active, div.footer-friendly-links a.friendly-link-item:hover, div.footer-friendly-links a.friendly-link-item:focus { text-decoration: none !important; border-bottom: none !important; text-decoration-line: none !important; text-decoration-style: none !important; text-decoration-color: transparent !important; text-underline-offset: unset !important; -webkit-text-decoration: none !important; -moz-text-decoration: none !important; } /* 直接覆盖Bootstrap的全局a:hover规则 - 仅针对友情链接 */ .footer-friendly-links a:hover, .footer-friendly-links a:focus { text-decoration: none !important; } /* 使用更高特异性的选择器 */ .footer-links-section-inline .footer-friendly-links a:hover, .footer-links-section-inline .footer-friendly-links a:focus { text-decoration: none !important; } /* * 最终解决方案:覆盖Bootstrap的a:hover规则 * 由于Bootstrap CSS在common.css之后加载,我们需要使用更高的特异性 */ html body .footer-friendly-links a.friendly-link-item:hover, html body .footer-friendly-links a.friendly-link-item:focus, html body .footer-links-section-inline .footer-friendly-links a.friendly-link-item:hover, html body .footer-links-section-inline .footer-friendly-links a.friendly-link-item:focus, html body div.footer-friendly-links a.friendly-link-item:hover, html body div.footer-friendly-links a.friendly-link-item:focus { text-decoration: none !important; border-bottom: none !important; }