/* 双层渐变边框不变;--btn-fill + @property 使填充色可 transition */ @property --btn-fill { syntax: ""; inherits: false; initial-value: #CC261F; } .s-btn { display: inline-flex; align-items: center; justify-content: center; min-width: 8.75rem; min-height: 2.5rem; padding: .9375rem 2rem; gap: 1.875rem; border-radius: 1rem; color: var(--color-white); font-family: "OPPO Sans 4.0"; font-style: Medium; font-size: var(--font-15); font-weight: 500; line-height: var(--font-18); letter-spacing: 0rem; text-transform: capitalize; border: 1px solid transparent; white-space: nowrap; user-select: none; transition: all .3s ease; } .s-btn__actions { display: flex; align-items: center; gap: 1rem; } .s-btn--glass {} /* 渐变边框+hover背景变色 */ .s-btn--primary { background-color: var(--color-primary); } .s-btn--primary:hover { background-color: var(--color-primary-hover); } .s-btn--ghost { color: rgba(0, 0, 0, 1); background: transparent; border: 1px solid currentColor; } .s-btn--ghost:hover { color: var(--color-white); border-color: transparent; background-color: #3A3A3A; } .s-btn--ghost:hover img { filter: invert(1); } /* 按钮箭头 */ .s-btn .s-btn__arrow { width: .9375rem; height: .75rem; } /* 按钮小圆点 */ .s-btn .btn__dot { width: 0.5rem; height: 0.5rem; border-radius: 50%; background: var(--color-white); } /* 下划线 start */ .hover_underline::after { content: ""; position: absolute; left: 0; right: 0; bottom: -6px; width: 100%; height: 1px; background: currentColor; /* 用 3D 缩放固定 Y=1,避免收起时抗锯齿看起来“变细” */ transform: scale3d(0, 1, 1); transform-origin: center; will-change: transform; transition: transform 0.3s ease; } .hover_underline:hover::after { transform: scale3d(1, 1, 1); } /* 下划线 end */ /* 文字跑马灯 */ .marquee { width: 100%; overflow: hidden; white-space: nowrap; } .track { display: inline-block; white-space: nowrap; animation: scroll 20s linear infinite; } .track span { margin-right: 50px; } @keyframes scroll { 0% { transform: translateX(0); } 100% { transform: translateX(-50%); } } /* 文字跑马灯 */ /* 毛玻璃卡片 */ .glass-card { --c-glass: rgba(196, 196, 196, 0.2); --c-light: #fff; --saturation: 100%; --left: 2px; --right: -1.8px; border: none; background-color: color-mix(in srgb, var(--c-glass) 20%, transparent); backdrop-filter: blur(5px) saturate(var(--saturation)); box-shadow: inset 0 0 0 2px color-mix(in srgb, var(--c-light) 10%, transparent), inset var(--left) var(--left) 2px -2px color-mix(in srgb, var(--c-light) 90%, transparent), inset var(--right) var(--right) 2px -2px color-mix(in srgb, var(--c-light) 80%, transparent); } .glass-card2 { display: block; background: linear-gradient(135deg, rgba(230, 230, 230, 1) 0%, rgba(246, 246, 246, 1) 100%); box-shadow: -4px -4px 10px -8px rgba(255, 255, 255, 1), 4px 4px 10px -8px rgba(0, 0, 0, .3); } /* slide-btn */ .slide-btn { width: 3rem; height: 3rem; border: none; cursor: pointer; img { width: 100%; height: 100%; object-fit: cover; } } .slide-btn:hover img { filter: invert(1); } /* 所有的内页的公共样式 */ .section__banner { height: 46.875rem; display: flex; align-items: center; justify-content: center; background-size: cover; background-position: center; background-repeat: no-repeat; /* banner 标题 */ .section__banner__title { color: rgba(255, 255, 255, 1); font-family: "Douyin Sans"; font-style: Bold; font-size: var(--font-64); font-weight: 700; line-height: var(--font-77); letter-spacing: 0px; text-align: center; } .section__banner__sub { color: rgba(255, 255, 255, 1); font-family: "OPPO Sans 4.0"; font-style: Medium; font-size: var(--font-20); font-weight: 500; line-height: var(--font-24); letter-spacing: 0px; text-align: center; } } .section__header { display: flex; flex-direction: column; margin-bottom: 2.5rem; /*各模块的 红色标题 */ .section__title__red { color: var(--color-primary); font-family: "OPPO Sans 4.0"; font-style: Medium; font-size: var(--font-18); font-weight: 500; line-height: var(--font-22); letter-spacing: 0px; text-align: left; margin-bottom: 1rem; } /*各模块的 主标题 */ .section__title { color: rgba(0, 0, 0, 1); font-family: "OPPO Sans 4.0"; font-style: Medium; font-size: var(--font-38); font-weight: 500; line-height: var(--font-45); letter-spacing: 0px; text-align: left; } } /* 各模块的 描述文案样式 */ .section__desc { color: rgba(108, 108, 108, 1); font-family: "OPPO Sans 4.0"; font-style: Regular; font-size: var(--font-18); font-weight: 400; line-height: var(--font-26); letter-spacing: 0px; text-align: justify; margin-bottom: 1.25rem; max-width: 45rem; } /* 左图右文,间距100 */ .section__img_text { padding: 130px 260px 100px; .section__inner { display: flex; align-items: center; gap: 6.25rem; .section__left { width: 50%; height: 500px; border-radius: 2.5rem; overflow: hidden; img { width: 100%; height: 100%; object-fit: cover; } } .section__right { flex: 1; .section__desc:last-child { margin-bottom: 0; } } } } /* 时间轴组件 tab切换*/ .timeline__tabs { display: flex; align-items: center; gap: 0; .timeline__tab { flex: 1; display: flex; flex-direction: column; user-select: none; cursor: pointer; flex-shrink: 0; &.active { .dot { background-color: var(--color-primary); } } } .line-dot { width: 100%; display: flex; align-items: center; margin-top: 1rem; &::after, &::before { content: ""; display: block; flex: 1; height: 1px; background-color: #B5B5B5; } .dot { width: 1.25rem; height: 1.25rem; border-radius: 50%; border: .25rem solid #F4F3F3; background-color: #B5B5B5; } } } /* card卡片 img+title+desc*/ .s-card { border-radius: 1.5rem; background: var(--color-white); padding: 1.25rem; overflow: hidden; padding-bottom: 2.1875rem; .s-card__img { border-radius: 16px; width: 100%; height: 12.875rem; margin-bottom: 1.125rem; } .s-card__title { color: rgba(0, 0, 0, 1); font-family: "OPPO Sans 4.0"; font-style: Medium; font-size: var(--font-22); font-weight: 500; line-height: var(--font-26); letter-spacing: 0px; text-align: justify; margin-bottom: 1.125rem; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; text-overflow: ellipsis; } .s-card__sub-title { color: rgba(131, 131, 131, 1); font-family: "OPPO Sans 4.0"; font-style: Light; font-size: var(--font-16); font-weight: 300; line-height: var(--font-18); letter-spacing: 0px; text-align: justify; margin-bottom: 1.25rem; } .s-card__desc { color: rgba(102, 102, 102, 1); font-family: "OPPO Sans 4.0"; font-style: Regular; font-size: var(--font-18); font-weight: 400; line-height: var(--font-26); letter-spacing: 0px; text-align: justify; min-height: calc(var(--font-26) * 3); display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 3; overflow: hidden; text-overflow: ellipsis; } } /* swiper 公共样式 */ .swiper__wrap { position: relative; display: flex; align-items: center; justify-content: center; } /* tabs tab */ .s-tabs { display: flex; align-items: center; .s-tab-item { border-bottom: 2Px solid transparent; background: transparent; cursor: pointer; flex-shrink: 0; &.active { border-bottom-color: var(--color-primary); } } } .s-tabs-vertical__wrap { display: flex; border-radius: 1rem; background: var(--color-white); } /* 纵向tabs面板 */ .s-tabs-vertical { display: flex; flex-direction: column; .s-tab-item { cursor: pointer; flex-shrink: 0; } } /* 轮播图按钮切换组 */ .slide-btn__groups { display: flex; position: absolute; width: 120%; justify-content: space-between; } /* 公司metrics */ .section__metrics { padding: 60px 0; .section__metric-item { display: flex; flex-direction: column; align-items: center; flex: 1; position: relative; &:last-child::after { display: none; } &::after { content: ""; display: block; position: absolute; right: 0; top: 50%; transform: translateY(-50%); width: 1px; height: 80%; background: rgba(196, 196, 196, 0.2); } } .section__metric-value { color: rgba(58, 58, 58, 1); font-family: "OPPO Sans 4.0"; font-style: Medium; font-size: var(--font-26); font-weight: 500; line-height: var(--font-30); letter-spacing: 0px; text-align: left; margin-bottom: 12px; span { color: rgba(58, 58, 58, 1); font-family: "D-DIN-PRO"; font-style: SemiBold; font-size: var(--font-72); font-weight: 600; line-height: var(--font-72); letter-spacing: 0px; text-align: left; margin-right: 9px; } } .section__metric-label { color: rgba(108, 108, 108, 1); font-family: "OPPO Sans 4.0"; font-style: Regular; font-size: var(--font-24); font-weight: 400; line-height: var(--font-28); letter-spacing: 0px; text-align: left; } } .videoWindow { width: 100%; height: 100vh; position: fixed; top: 0; left: 0; display: none; background: rgba(0, 0, 0, 0.6); z-index: 101; } .videoWindow .content { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 60%; border-radius: 15px; overflow: hidden; } .videoWindow .content video { width: 100%; height: 100%; background: #000000; } .videoWindow .content .close { cursor: pointer; font-size: 0; position: absolute; right: 10px; top: 10px; z-index: 1; } @media (width <=992px) { .videoWindow .content{ width: 95%; height: 95%; border-radius: 0; overflow: initial; } .videoWindow .content .close{ top: 0px; right: 0; } .section__banner { .section__banner__title { font-size: 48px; line-height: 60px; } } .swiper__wrap { flex-direction: column; gap: 20px; /* 轮播图按钮切换组 */ .swiper { width: 100%; } .slide-btn__groups { display: flex; position: relative; width: 100%; gap: 2.5rem; justify-content: center; } } .section__img_text { --p-x: 20px; .section__inner { flex-direction: column !important; gap: 40px; .section__left { width: 100%; } .section__right { width: 100%; .section__desc { font-size: var(--font-14); line-height: var(--font-20); } } } } .timeline__tabs { width: 100%; justify-content: flex-start !important; overflow: auto; .timeline__tab { flex: 0 0 50%; } } .s-tabs { width: 100%; justify-content: flex-start !important; overflow: auto; } .s-tabs-vertical__wrap { flex-direction: column; } .s-tabs-vertical { border-radius: 0 !important; width: 100% !important; flex-direction: row !important; justify-content: flex-start !important; overflow: auto; .s-tab-item { padding: 20px !important; } } .swiper-slide-active { transform: scale(1) !important; } .section__metrics { .section__metric-value { font-size: 14px; line-height: 16px; margin-bottom: 8px; span { margin-right: 4px; font-size: 30px; line-height: 32px; } } .section__metric-label { font-size: 12px; line-height: 14px; } } } @media (width <=992px) { .section__header { align-items: center; } .section__desc { max-width: 100%; &:last-child { margin-bottom: 0; } } }