Files
BlackFruit-UI/css/index.css
yiqiu a18136def5
All checks were successful
continuous-integration/drone/push Build is passing
太热
2025-11-22 18:22:03 +08:00

565 lines
11 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.
/* banner */
.banner-cont {
position: relative;
width: 100%;
overflow: hidden;
/* 确保 3D 地球在竖直方向不会被裁剪,预留更大展示区域 */
min-height: 520px;
}
/* banner 区背景:改为暗色科技感渐变,左侧适合文案,右侧衬托地球与飞行轨迹 */
.section.banner {
background:
radial-gradient(circle at 0% 0%, rgba(56, 189, 248, 0.22) 0%, transparent 40%),
radial-gradient(circle at 80% 20%, rgba(129, 140, 248, 0.35) 0%, transparent 55%),
linear-gradient(135deg, #020617 0%, #020617 40%, #0B1120 60%, #020617 100%);
}
.banner-cont .swiper-slide {
width: 100%;
background: linear-gradient(0, #f7f9fa, #f9fafb);
}
.banner-cont .swiper-slide .img {
/* 图片撑开高度,避免被裁切 */
display: block;
width: 100%;
height: auto;
max-width: 100%;
}
/* 文案层:覆盖在轮播上,使用 section-content 控制左右宽度 */
.banner-cont .banner-text {
position: absolute;
left: 0;
top: 0;
width: 100%;
height: 100%;
/* 需要盖在 swiper-slide 之上swiper 本身 z-index: 1这里抬高一层 */
z-index: 10;
pointer-events: none;
}
.banner-cont .banner-text .section-content {
/* 相对定位,便于内部文案块绝对居中定位 */
position: relative;
height: 100%;
padding: 0 20px; /* 左右 20px 内边距,与全站一致 */
margin: 0 auto; /* 保持与其他 section-content 一致的水平布局 */
}
.banner-copy {
max-width: 560px;
text-align: left;
/* 绝对定位:在整块 banner 内垂直居中,水平方向与下方卡片文案左侧对齐 */
position: absolute;
top: 50%;
left: 0;
transform: translateY(-50%);
/* 与下方 .banner-item 内的文案左对齐section-content padding 20px + item padding 60px */
padding-left: 80px;
}
.banner-copy #bannerTitle {
font-size: 44px;
line-height: 1.2;
color: #F9FAFB;
}
.banner-copy .banner-desc {
font-size: 16px;
margin-top: 16px;
margin-bottom: 32px;
max-width: 550px;
color: rgba(148, 163, 184, 0.95);
}
.banner-copy #bannerButton {
pointer-events: auto;
/* 首页主按钮稍大一些,突出主召唤操作 */
font-size: 16px;
padding: 12px 48px;
}
/* 轮播文案标签 */
.banner-tags {
margin-bottom: 12px;
}
.banner-tag-pill {
display: inline-block;
margin-right: 8px;
padding: 4px 12px;
font-size: 14px;
border-radius: 999px;
background: rgba(15, 23, 42, 0.8);
color: #E0F2FE;
}
/* 3D 地球容器:与 section-content 右对齐(和下方卡片区域右边保持一致) */
.banner-globe {
position: absolute;
top: 50%;
/* 相对于 section-content 右对齐section-content padding-right 为 20px */
right: 20px;
transform: translateY(-50%);
width: 420px;
height: 420px;
z-index: 20; /* 高于轮播图与文案层 */
pointer-events: none; /* 不影响轮播图滑动与点击 */
}
/* 中等屏幕下稍微缩小地球,避免挡住文案 */
@media (max-width: 1400px) {
.banner-globe {
right: 20px;
width: 360px;
height: 360px;
}
}
/* 小屏幕(如窄笔记本)下隐藏 3D 地球,保持可用性 */
@media (max-width: 1100px) {
.banner-globe {
display: none;
}
}
.banner .banner-s {
/* 首页下半部分 banner 卡片采用毛玻璃 + 阴影效果 */
background: rgba(15, 23, 42, 0.8);
border-radius: 16px;
box-shadow: 0 24px 80px rgba(15, 23, 42, 0.85);
border: 1px solid rgba(148, 163, 184, 0.45);
backdrop-filter: blur(20px);
}
.banner .banner-s .banner-list {
display: flex;
flex-wrap: wrap;
padding: 0 20px;
}
.banner-s .banner-list .banner-item {
flex: 1;
cursor: pointer;
width: 335px;
padding: 30px 60px;
color: #E5E7EB;
}
.banner-s .banner-list .banner-item:hover {
background: rgba(15, 23, 42, 0.75);
}
.banner-s .banner-list .banner-item:hover h5 {
color: #F9FAFB;
}
.banner-list .banner-item .banner-tag {
font-size: 12px;
color: #E0F2FE;
border: 1px solid rgba(148, 163, 184, 0.55);
padding: 5px 8px;
border-radius: 3px;
}
/* 首页专属 header 科技风样式(仅在 body#\index 上生效,避免影响其他页面) */
body#index .nav-shadow {
background:
linear-gradient(90deg, rgba(15, 23, 42, 0.98) 0%, rgba(15, 23, 42, 0.96) 60%, rgba(8, 47, 73, 0.96) 100%);
box-shadow: 0 1px 0 rgba(15, 23, 42, 0.8);
}
body#index .nav-menu .nav-item {
color: #E5E7EB;
}
body#index .nav-menu .nav-item:hover {
border-bottom-color: #38BDF8;
}
body#index .nav-right .control {
color: #E5E7EB;
}
/* 服务内容 */
.service-content {
display: flex;
margin-top: 60px;
margin: -10px;
margin-top: 50px;
}
.service .service-box {
min-height: 191px;
margin: 10px;
position: relative;
padding: 30px;
border: 1px solid rgba(226, 232, 240, 1);
border-radius: 10px;
background: rgba(255, 255, 255, 0.96);
box-shadow: 0 18px 45px rgba(15, 23, 42, 0.06);
}
.service .service-box:hover {
box-shadow: 0 24px 60px rgba(15, 23, 42, 0.12);
border-color: rgba(56, 189, 248, 0.6);
}
.service .service-box .service-title {
color: #333;
}
.service .service-box:hover h4 {
color: #38BDF8;
}
.service .service-hot::before {
content: '';
height: 60px;
width: 60px;
position: absolute;
right: -4px;
top: -4px;
background: url('../assets/img/index/hot.png');
background-repeat: no-repeat;
background-size: 100%;
}
.service-box .title-desc {
margin: 16px 0;
height: 42px;
}
.service .service-tag-group {
display: flex;
}
.service .service-tag-group .service-tag {
display: flex;
align-items: center;
justify-items: center;
margin-right: 8px;
font-size: 12px;
padding: 0 12px;
color: rgba(0, 0, 0, 0.6);
height: 24px;
background: #F7F8F9;
border: 1px solid #EDEDED;
border-radius: 1px;
}
/* 解决方案 */
.resolve {
background: #13182C url(../assets/img/index/home-bg.png) no-repeat center center;
background-size: cover;
}
.resolve-content {
margin: -10px;
margin-top: 60px;
}
.resolve-content .resolve-box {
position: relative;
top: 0;
max-width: 335px;
padding: 30px;
margin: 10px;
background: #F7F8F9;
box-shadow: 0px 0px 16px rgba(52, 52, 52, 0.16);
opacity: 1;
border-radius: 10px;
transition: .5s all;
cursor: pointer;
background-size: cover;
background-repeat: no-repeat;
}
.resolve-content .resolve-box:nth-child(1) {
background-image: url('../assets/img/index/solution-1.png');
}
.resolve-content .resolve-box:nth-child(2) {
background-image: url('../assets/img/index/solution-2.png');
}
.resolve-content .resolve-box:nth-child(3) {
background-image: url('../assets/img/index/solution-3.png');
}
.resolve-content .resolve-box:nth-child(4) {
background-image: url('../assets/img/index/solution-7.png');
}
.resolve-content .fboxRow:nth-child(2) .resolve-box:nth-child(1) {
background-image: url('../assets/img/index/solution-4.png');
}
.resolve-content .fboxRow:nth-child(2) .resolve-box:nth-child(2) {
background-image: url('../assets/img/index/solution-5.png');
}
.resolve-content .fboxRow:nth-child(2) .resolve-box:nth-child(3) {
background-image: url('../assets/img/index/solution-6.png');
}
.resolve-content .fboxRow:nth-child(2) .resolve-box:nth-child(4) {
background-image: url('../assets/img/index/solution-8.png');
}
.resolve-content .resolve-box:hover {
top: -10px;
}
.resolve-content .resolve-box:hover h4,
.resolve-content .resolve-box:hover .resolve-link {
color: rgba(56, 189, 248, 1);
}
.resolve-content .resolve-box h4 {
color: rgba(0, 0, 0, 0.9);
font-size: 22px;
margin-bottom: 20px;
}
.resolve-content .resolve-box .resolve-link {
color: rgba(0, 0, 0, 0.60);
margin-top: 60px;
font-size: 14px;
}
/* 服务实践 */
.practice {}
.practice .practice-content {
margin: -10px;
margin-top: 40px;
flex-wrap: wrap;
}
.practice .practice-box {
margin: 10px;
padding: 30px;
width: 453px;
border: 1px solid #E6EAED;
text-align: center;
border-radius: 10px;
flex-shrink: 0;
}
.practice .practice-box img {
width: 177px;
height: 66px;
cursor: pointer;
}
.practice-box:hover {
box-shadow: 0px 0px 16px rgba(52, 52, 52, 0.16);
}
.brand-group {
margin: -10px;
display: flex;
flex-wrap: wrap;
}
.practice .brand-box {
margin: 10px;
width: 216px;
height: 124px;
align-items: center;
display: flex;
justify-content: center;
border: 1px solid #E6EAED;
}
.practice .brand-box img {
width: 86px;
height: 75px;
cursor: pointer;
}
.practice .brand-box:hover {
box-shadow: 0px 0px 16px rgba(52, 52, 52, 0.16);
}
/* 基础措施 */
.section-base {
background: rgba(247, 248, 250, 1);
}
.section-base .base {
margin-top: 42px;
}
.section-base>.section-content {
padding: 62px 20px 0;
}
.section-base .base img {
width: calc(100% - 140px);
margin-left: 35px;
height: 520px;
padding-right: 80px;
}
.base .base-content {
margin-bottom: 100px;
}
.base .base-content .title-desc {
white-space: nowrap;
}
.cert {
border: 2px solid #FFFFFF;
border-radius: 3px;
background: linear-gradient(180deg, #F4F6F8 0%, #FDFEFE 100%);
box-shadow: 0px 3px 12px rgba(0, 0, 0, 0.08);
}
.cert-list {
padding: 0 20px;
}
.cert-list .cert-item {
padding: 13px 0;
display: flex;
flex-direction: column;
align-items: center;
width: 200px;
}
.cert-list .cert-item img {
height: 56px;
width: 56px;
cursor: pointer;
}
.cert-list .cert-item .title-desc {
font-size: 12px;
margin-top: 5px;
}
/* 新闻 */
.news-content {
margin-top: 60px;
display: flex;
flex-wrap: wrap;
gap: 130px;
}
.news-content .news-cont {
flex: 1;
}
.news-content .news-head .news-title {
padding-left: 5px;
font-size: 22px;
}
.news-content .news-head .news-title {
position: relative;
padding-left: 10px;
font-size: 18px;
line-height: 20px;
height: 20px;
}
.news-content .news-head .news-title::before {
content: '';
width: 2px;
height: 20px;
position: absolute;
left: 0;
top: 0;
background: #38BDF8;
}
.news-content .news-head .news-more {
font-size: 14px;
color: rgba(0, 0, 0, 0.6);
}
.news-content .news-list {
margin-top: 15px;
}
.news-content .news-list .news-item {
line-height: 50px;
display: flex;
justify-content: space-between;
border-bottom: 1px dashed #E6EAED;
}
.news-content .news-cont .news-item:nth-child(1) .number {
background: rgba(56, 189, 248, 1);
}
.news-content .news-cont .news-item:nth-child(2) .number {
background: rgba(56, 189, 248, 1);
}
.news-content .news-cont .news-item:nth-child(3) .number {
background: rgba(56, 189, 248, 1);
}
.news-content .news-item .number {
margin-right: 10px;
display: flex;
align-items: center;
justify-content: center;
color: #fff;
font-size: 12px;
width: 14px;
height: 14px;
background: rgba(222, 222, 222, 1);
border-radius: 3px;
}
.news-content .news-item .title {
font-size: 14px;
color: rgba(0, 0, 0, 0.90);
}
.news-content .news-item .title:hover {
color: rgba(56, 189, 248, 1);
}
.news-content .news-item .time {
color: rgba(0, 0, 0, 0.4);
font-size: 13px;
min-width: 100px;
text-align: right;
}
.index .footer-link {
display: block;
}
.over-hide {
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
height: 24px;
}
.over-hide+p {
display: flex;
flex-wrap: wrap;
word-break: break-all;
}