684 lines
25 KiB
PHP
684 lines
25 KiB
PHP
<!DOCTYPE html>
|
||
<html class="no-js" lang="">
|
||
|
||
<head>
|
||
<meta charset="utf-8" />
|
||
<meta http-equiv="x-ua-compatible" content="ie=edge" />
|
||
<title>Nova - Bootstrap 5 Template</title>
|
||
<meta name="description" content="" />
|
||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||
<link rel="stylesheet" href="assets/css/bootstrap-5.0.0-beta1.min.css" />
|
||
<link rel="stylesheet" href="assets/css/LineIcons.2.0.css" />
|
||
<link rel="stylesheet" href="assets/css/tiny-slider.css" />
|
||
<link rel="stylesheet" href="assets/css/animate.css" />
|
||
<link rel="stylesheet" href="assets/css/lindy-uikit.css" />
|
||
<link rel="stylesheet" href="assets/css/all.min.css" />
|
||
<!-- Swiper CSS -->
|
||
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/swiper@11/swiper-bundle.min.css" />
|
||
</head>
|
||
|
||
<body>
|
||
<!--[if lte IE 9]>
|
||
<p class="browserupgrade">
|
||
You are using an <strong>outdated</strong> browser. Please
|
||
<a href="https://browsehappy.com/">upgrade your browser</a> to improve
|
||
your experience and security.
|
||
</p>
|
||
<![endif]-->
|
||
|
||
<div class="preloader">
|
||
<div class="loader">
|
||
<div class="spinner">
|
||
<div class="spinner-container">
|
||
<div class="spinner-rotator">
|
||
<div class="spinner-left">
|
||
<div class="spinner-circle"></div>
|
||
</div>
|
||
<div class="spinner-right">
|
||
<div class="spinner-circle"></div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<section id="home" class="hero-section-wrapper-5">
|
||
<header class="header header-6">
|
||
<div class="navbar-area">
|
||
<div class="container">
|
||
<div class="row align-items-center">
|
||
<div class="col-lg-12">
|
||
<nav class="navbar navbar-expand-lg">
|
||
<a class="navbar-brand" href="index.html">
|
||
<img src="assets/img/logo/logo.svg" alt="Logo" />
|
||
</a>
|
||
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarSupportedContent6" aria-controls="navbarSupportedContent6" aria-expanded="false" aria-label="Toggle navigation">
|
||
<span class="toggler-icon"></span>
|
||
<span class="toggler-icon"></span>
|
||
<span class="toggler-icon"></span>
|
||
</button>
|
||
|
||
<div class="collapse navbar-collapse sub-menu-bar" id="navbarSupportedContent6">
|
||
<ul id="nav6" class="navbar-nav ms-auto">
|
||
<li class="nav-item">
|
||
<a class="page-scroll active" href="#home">主页</a>
|
||
</li>
|
||
<li class="nav-item">
|
||
<a class="page-scroll" href="#feature">文章中心</a>
|
||
</li>
|
||
<li class="nav-item">
|
||
<a class="page-scroll" href="#about">关于我们</a>
|
||
</li>
|
||
|
||
<li class="nav-item">
|
||
<a class="page-scroll" href="#pricing">Pricing</a>
|
||
</li>
|
||
<li class="nav-item">
|
||
<a class="page-scroll" href="#contact">联系我们</a>
|
||
</li>
|
||
</ul>
|
||
</div>
|
||
</nav>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</header>
|
||
<!-- Banner 轮播图 -->
|
||
<div class="swiper banner-swiper">
|
||
<div class="swiper-wrapper" id="banner-container">
|
||
<!-- Banner 将通过 JavaScript 动态加载 -->
|
||
</div>
|
||
<div class="swiper-pagination"></div>
|
||
<div class="swiper-button-next"></div>
|
||
<div class="swiper-button-prev"></div>
|
||
</div>
|
||
</section>
|
||
<section id="feature" class="feature-section feature-style-5">
|
||
<div class="container">
|
||
<div class="row justify-content-center">
|
||
<div class="col-xxl-5 col-xl-5 col-lg-7 col-md-8">
|
||
<div class="section-title text-center mb-60">
|
||
<h3 class="mb-15 wow fadeInUp" data-wow-delay=".2s">文章中心</h3>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
<div class="row" id="news-container">
|
||
<!-- 卡片将通过 JavaScript 动态加载 -->
|
||
</div>
|
||
|
||
</div>
|
||
</section>
|
||
<section id="about" class="about-section about-style-4">
|
||
<div class="container">
|
||
<div class="row align-items-center">
|
||
<div class="col-xl-5 col-lg-6">
|
||
<div class="about-content-wrapper">
|
||
<div class="section-title mb-30">
|
||
<h3 class="mb-25 wow fadeInUp" data-wow-delay=".2s">The future of designing starts here</h3>
|
||
<p class="wow fadeInUp" data-wow-delay=".3s">Stop wasting time and money designing and managing a website that doesn’t get results. Happiness guaranteed,</p>
|
||
</div>
|
||
<ul>
|
||
<li class="wow fadeInUp" data-wow-delay=".35s">
|
||
<i class="lni lni-checkmark-circle"></i>
|
||
Stop wasting time and money designing and managing a website that doesn’t get results.
|
||
</li>
|
||
<li class="wow fadeInUp" data-wow-delay=".4s">
|
||
<i class="lni lni-checkmark-circle"></i>
|
||
Stop wasting time and money designing and managing.
|
||
</li>
|
||
<li class="wow fadeInUp" data-wow-delay=".45s">
|
||
<i class="lni lni-checkmark-circle"></i>
|
||
Stop wasting time and money designing and managing a website that doesn’t get results.
|
||
</li>
|
||
</ul>
|
||
<a href="#0" class="button button-lg radius-10 wow fadeInUp" data-wow-delay=".5s">Learn More</a>
|
||
</div>
|
||
</div>
|
||
<div class="col-xl-7 col-lg-6">
|
||
<div class="about-image text-lg-right wow fadeInUp" data-wow-delay=".5s">
|
||
<img src="assets/img/about/about-4/about-img.svg" alt="">
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</section>
|
||
<section id="pricing" class="pricing-section pricing-style-4 bg-light">
|
||
<div class="container">
|
||
<div class="row align-items-center">
|
||
<div class="col-xl-5 col-lg-6">
|
||
<div class="section-title mb-60">
|
||
<h3 class="mb-15 wow fadeInUp" data-wow-delay=".2s">Pricing Plan</h3>
|
||
<p class="wow fadeInUp" data-wow-delay=".4s">Stop wasting time and money designing and managing a website that doesn’t get results. Happiness guaranteed!Stop wasting time and money designing and managing a website that doesn’t get results. Happiness guaranteed!</p>
|
||
</div>
|
||
</div>
|
||
<div class="col-xl-7 col-lg-6">
|
||
<div class="pricing-active-wrapper wow fadeInUp" data-wow-delay=".4s">
|
||
<div class="pricing-active">
|
||
<div class="single-pricing-wrapper">
|
||
<div class="single-pricing">
|
||
<h6>Basic Design</h6>
|
||
<h4>Web Design</h4>
|
||
<h3>$ 29.00</h3>
|
||
<ul>
|
||
<li>Carefully crafted components</li>
|
||
<li>Amazing page examples</li>
|
||
<li>Super friendly support team</li>
|
||
<li>Awesome Support</li>
|
||
</ul>
|
||
<a href="#0" class="button radius-30">Get Started</a>
|
||
</div>
|
||
</div>
|
||
<div class="single-pricing-wrapper">
|
||
<div class="single-pricing">
|
||
<h6>Standard Design</h6>
|
||
<h4>Web Development</h4>
|
||
<h3>$ 89.00</h3>
|
||
<ul>
|
||
<li>Carefully crafted components</li>
|
||
<li>Amazing page examples</li>
|
||
<li>Super friendly support team</li>
|
||
<li>Awesome Support</li>
|
||
</ul>
|
||
<a href="#0" class="button radius-30">Get Started</a>
|
||
</div>
|
||
</div>
|
||
<div class="single-pricing-wrapper">
|
||
<div class="single-pricing">
|
||
<h6>Pro Design</h6>
|
||
<h4>Design & Develop</h4>
|
||
<h3>$ 199.00</h3>
|
||
<ul>
|
||
<li>Carefully crafted components</li>
|
||
<li>Amazing page examples</li>
|
||
<li>Super friendly support team</li>
|
||
<li>Awesome Support</li>
|
||
</ul>
|
||
<a href="#0" class="button radius-30">Get Started</a>
|
||
</div>
|
||
</div>
|
||
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</section>
|
||
<section id="contact" class="contact-section contact-style-3">
|
||
<div class="container">
|
||
<div class="row justify-content-center">
|
||
<div class="col-xxl-5 col-xl-5 col-lg-7 col-md-10">
|
||
<div class="section-title text-center mb-50">
|
||
<h3 class="mb-15">联系我们</h3>
|
||
<p>如果您有任何需求,欢迎联系我们!</p>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div class="row">
|
||
<div class="col-lg-8">
|
||
<div class="contact-form-wrapper">
|
||
<form action="" method="">
|
||
<div class="row">
|
||
<div class="col-md-6">
|
||
<div class="single-input">
|
||
<input type="text" id="name" name="name" class="form-input" placeholder="姓名">
|
||
<i class="lni lni-user"></i>
|
||
</div>
|
||
</div>
|
||
<div class="col-md-6">
|
||
<div class="single-input">
|
||
<input type="email" id="email" name="email" class="form-input" placeholder="邮箱">
|
||
<i class="lni lni-envelope"></i>
|
||
</div>
|
||
</div>
|
||
<div class="col-md-6">
|
||
<div class="single-input">
|
||
<input type="text" id="number" name="number" class="form-input" placeholder="手机号">
|
||
<i class="lni lni-phone"></i>
|
||
</div>
|
||
</div>
|
||
<div class="col-md-6">
|
||
<div class="single-input">
|
||
<input type="text" id="subject" name="subject" class="form-input" placeholder="您的标题">
|
||
<i class="lni lni-text-format"></i>
|
||
</div>
|
||
</div>
|
||
<div class="col-md-12">
|
||
<div class="single-input">
|
||
<textarea name="message" id="message" class="form-input" placeholder="您的需求" rows="6"></textarea>
|
||
<i class="lni lni-comments-alt"></i>
|
||
</div>
|
||
</div>
|
||
<div class="col-md-12">
|
||
<div class="form-button">
|
||
<button type="submit" class="button"> <i class="lni lni-telegram-original"></i> 提交</button>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</form>
|
||
</div>
|
||
|
||
</div>
|
||
|
||
<div class="col-lg-4">
|
||
<div class="left-wrapper">
|
||
<div class="row">
|
||
<div class="col-lg-12 col-md-6">
|
||
<div class="single-item">
|
||
<div class="icon">
|
||
<i class="lni lni-phone"></i>
|
||
</div>
|
||
<div class="text">
|
||
<p>+86 19895983967</p>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div class="col-lg-12 col-md-6">
|
||
<div class="single-item">
|
||
<div class="icon">
|
||
<i class="lni lni-envelope"></i>
|
||
</div>
|
||
<div class="text">
|
||
<p>lygyunze@gmail.com</p>
|
||
<p>357099073@qq.com</p>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div class="col-lg-12 col-md-6">
|
||
<div class="single-item">
|
||
<div class="icon">
|
||
<i class="lni lni-map-marker"></i>
|
||
</div>
|
||
<div class="text">
|
||
<p>江苏省连云港市海州区润潮国际大厦</p>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</section>
|
||
<section class="clients-logo-section pt-100 pb-100">
|
||
<div class="container">
|
||
<div class="row">
|
||
<div class="col-lg-12">
|
||
<div class="client-logo wow fadeInUp" data-wow-delay=".2s">
|
||
<img src="assets/img/clients/brands.svg" alt="" class="w-100">
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</section>
|
||
<footer class="footer footer-style-4">
|
||
<div class="container">
|
||
<div class="widget-wrapper">
|
||
<div class="row">
|
||
<div class="col-xl-3 col-lg-4 col-md-6">
|
||
<div class="footer-widget wow fadeInUp" data-wow-delay=".2s">
|
||
<div class="logo">
|
||
<a href="#0"> <img src="assets/img/logo/logo.svg" alt=""> </a>
|
||
</div>
|
||
<p class="desc">Lorem ipsum dolor sit amet, consectetur adipiscing elit. Facilisis nulla placerat amet amet congue.</p>
|
||
<ul class="socials">
|
||
<li> <a href="#0"> <i class="fa-brands fa-qq"></i> </a> </li>
|
||
<li> <a href="#0"> <i class="fa-brands fa-weixin"></i> </a> </li>
|
||
<li> <a href="#0"> <i class="fa-brands fa-weibo"></i> </a> </li>
|
||
</ul>
|
||
</div>
|
||
</div>
|
||
<div class="col-xl-2 offset-xl-1 col-lg-2 col-md-6 col-sm-6">
|
||
<div class="footer-widget wow fadeInUp" data-wow-delay=".3s">
|
||
<h6>快捷链接</h6>
|
||
<ul class="links">
|
||
<li> <a href="#0">主页</a> </li>
|
||
<li> <a href="#0">关于我们</a> </li>
|
||
<li> <a href="#0">服务</a> </li>
|
||
<li> <a href="#0">客户评价</a> </li>
|
||
<li> <a href="#0">联系</a> </li>
|
||
</ul>
|
||
</div>
|
||
</div>
|
||
<div class="col-xl-3 col-lg-3 col-md-6 col-sm-6">
|
||
<div class="footer-widget wow fadeInUp" data-wow-delay=".4s">
|
||
<h6>服务</h6>
|
||
<ul class="links">
|
||
<li> <a href="#0">Web Design</a> </li>
|
||
<li> <a href="#0">Web Development</a> </li>
|
||
<li> <a href="#0">Seo Optimization</a> </li>
|
||
<li> <a href="#0">Blog Writing</a> </li>
|
||
</ul>
|
||
</div>
|
||
</div>
|
||
<div class="col-xl-3 col-lg-3 col-md-6">
|
||
<div class="footer-widget wow fadeInUp" data-wow-delay=".5s">
|
||
<h6>软件下载</h6>
|
||
<ul class="download-app">
|
||
<li>
|
||
<a href="#0">
|
||
<span class="icon"><i class="lni lni-apple"></i></span>
|
||
<span class="text">Download on the <b>App Store</b> </span>
|
||
</a>
|
||
</li>
|
||
<li>
|
||
<a href="#0">
|
||
<span class="icon"><i class="lni lni-play-store"></i></span>
|
||
<span class="text">GET IT ON <b>Play Store</b> </span>
|
||
</a>
|
||
</li>
|
||
</ul>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div class="copyright-wrapper wow fadeInUp" data-wow-delay=".2s">
|
||
<p>Design and Developed by <a href="https://www.yunzer.cn" rel="nofollow" target="_blank">云泽网</a></p>
|
||
</div>
|
||
</div>
|
||
</footer>
|
||
<a href="#" class="scroll-top"> <i class="lni lni-chevron-up"></i> </a>
|
||
<script src="assets/js/bootstrap-5.0.0-beta1.min.js"></script>
|
||
<script src="assets/js/tiny-slider.js"></script>
|
||
<script src="assets/js/wow.min.js"></script>
|
||
<script src="assets/js/main.js"></script>
|
||
<script src="assets/js/all.min.js"></script>
|
||
<!-- Swiper JS -->
|
||
<script src="https://cdn.jsdelivr.net/npm/swiper@11/swiper-bundle.min.js"></script>
|
||
|
||
<!-- 加载新闻数据 -->
|
||
<script>
|
||
// API 接口地址配置
|
||
const API_BASE_URL = 'https://api.yunzer.cn';
|
||
|
||
// 加载 Banner 轮播图
|
||
function loadBanners() {
|
||
const bannerContainer = document.getElementById('banner-container');
|
||
if (!bannerContainer) return;
|
||
|
||
fetch(API_BASE_URL + '/getBanners')
|
||
.then(res => res.json())
|
||
.then(result => {
|
||
if (result.code !== 200 || !result.list || result.list.length === 0) {
|
||
// 没有 Banner 时显示默认内容
|
||
bannerContainer.innerHTML = '<div class="swiper-slide"><div class="hero-section hero-style-5 img-bg" style="background-image: url(\'assets/img/hero/hero-5/hero-bg.svg\')"><div class="container"><div class="row"><div class="col-lg-6"><div class="hero-content-wrapper"><h2 class="mb-30">欢迎来到我们的网站</h2><p class="mb-30">精彩从这里开始</p></div></div><div class="col-lg-6 align-self-end"><div class="hero-image"><img src="assets/img/hero/hero-5/hero-img.svg" alt=""></div></div></div></div></div></div>';
|
||
initSwiper();
|
||
return;
|
||
}
|
||
|
||
let html = '';
|
||
result.list.forEach((item) => {
|
||
const title = item.title || '';
|
||
const desc = item.desc || '';
|
||
const imageUrl = item.image || '';
|
||
const url = item.url || '#';
|
||
|
||
html += '<div class="swiper-slide">' +
|
||
'<div class="hero-section hero-style-5 img-bg" style="background-image: url(\'assets/img/hero/hero-5/hero-bg.svg\')">' +
|
||
'<div class="container">' +
|
||
'<div class="row">' +
|
||
'<div class="col-lg-6">' +
|
||
'<div class="hero-content-wrapper">' +
|
||
'<h2 class="mb-30 wow fadeInUp" data-wow-delay=".2s">' + title + '</h2>' +
|
||
'<p class="mb-30 wow fadeInUp" data-wow-delay=".4s">' + desc + '</p>' +
|
||
(url !== '#' ? '<a href="' + url + '" class="button button-lg radius-50 wow fadeInUp" data-wow-delay=".6s">了解更多 <i class="lni lni-chevron-right"></i></a>' : '') +
|
||
'</div>' +
|
||
'</div>' +
|
||
'<div class="col-lg-6 align-self-end">' +
|
||
'<div class="hero-image wow fadeInUp" data-wow-delay=".5s">' +
|
||
'<img src="' + imageUrl + '" alt="' + title + '">' +
|
||
'</div>' +
|
||
'</div>' +
|
||
'</div>' +
|
||
'</div>' +
|
||
'</div>' +
|
||
'</div>';
|
||
});
|
||
|
||
bannerContainer.innerHTML = html;
|
||
initSwiper();
|
||
})
|
||
.catch(err => {
|
||
console.error('加载 Banner 失败:', err);
|
||
bannerContainer.innerHTML = '<div class="swiper-slide"><div class="hero-section hero-style-5 img-bg" style="background-image: url(\'assets/img/hero/hero-5/hero-bg.svg\')"><div class="container"><div class="row"><div class="col-lg-6"><div class="hero-content-wrapper"><h2 class="mb-30">欢迎来到我们的网站</h2><p class="mb-30">精彩从这里开始</p></div></div><div class="col-lg-6 align-self-end"><div class="hero-image"><img src="assets/img/hero/hero-5/hero-img.svg" alt=""></div></div></div></div></div></div>';
|
||
initSwiper();
|
||
});
|
||
}
|
||
|
||
// 初始化 Swiper
|
||
function initSwiper() {
|
||
new Swiper('.banner-swiper', {
|
||
loop: true,
|
||
autoplay: {
|
||
delay: 5000,
|
||
disableOnInteraction: false,
|
||
},
|
||
pagination: {
|
||
el: '.swiper-pagination',
|
||
clickable: true,
|
||
},
|
||
navigation: {
|
||
nextEl: '.swiper-button-next',
|
||
prevEl: '.swiper-button-prev',
|
||
}
|
||
});
|
||
}
|
||
|
||
// 去除 HTML 标签,提取纯文本
|
||
function stripHtml(html) {
|
||
if (!html) return '';
|
||
// 先替换所有 HTML 标签为空格
|
||
var text = html.replace(/<[^>]+>/g, ' ');
|
||
// 替换多个空格为单个空格
|
||
text = text.replace(/\s+/g, ' ');
|
||
// 去除首尾空格
|
||
return text.trim();
|
||
}
|
||
|
||
// 获取完整图片地址
|
||
function getFullImageUrl(imagePath) {
|
||
if (!imagePath) return '';
|
||
// 如果已经是完整 URL,直接返回
|
||
if (imagePath.startsWith('http://') || imagePath.startsWith('https://')) {
|
||
return imagePath;
|
||
}
|
||
// 拼接完整 URL
|
||
return API_BASE_URL + (imagePath.startsWith('/') ? imagePath : '/' + imagePath);
|
||
}
|
||
|
||
// 页面加载完成后执行
|
||
document.addEventListener('DOMContentLoaded', function() {
|
||
// 加载 Banner 轮播图
|
||
loadBanners();
|
||
|
||
// 加载新闻数据
|
||
const container = document.getElementById('news-container');
|
||
if (!container) return;
|
||
|
||
// 请求数据(后端从 Referer 自动识别租户域名)
|
||
fetch(API_BASE_URL + '/getCenterNews')
|
||
.then(res => res.json())
|
||
.then(result => {
|
||
if (result.code !== 200 || !result.list || result.list.length === 0) {
|
||
container.innerHTML = '<p style="text-align:center;width:100%">暂无新闻</p>';
|
||
return;
|
||
}
|
||
|
||
let html = '';
|
||
|
||
result.list.forEach((item, i) => {
|
||
const title = item.title || '无标题';
|
||
let desc = item.summary || item.description || '';
|
||
// 去除 HTML 标签后截取
|
||
if (!desc && item.content) {
|
||
desc = stripHtml(item.content);
|
||
}
|
||
if (!desc) desc = '暂无描述';
|
||
|
||
// 获取缩略图地址(优先使用 thumb,其次使用 image)
|
||
const thumbUrl = getFullImageUrl(item.thumb || item.image);
|
||
const thumbHtml = thumbUrl ?
|
||
'<img src="' + thumbUrl + '" alt="' + title + '" class="news-thumb">' :
|
||
'<div class="news-thumb-placeholder">暂无图片</div>';
|
||
|
||
html += '<div class="col-lg-3 col-md-6 mb-4">' +
|
||
'<div class="news-card wow fadeInUp" data-wow-delay=".2s">' +
|
||
'<div class="news-thumb-wrap">' +
|
||
thumbHtml +
|
||
'</div>' +
|
||
'<div class="news-body">' +
|
||
'<h5 class="news-title">' + title + '</h5>' +
|
||
'<p class="news-desc">' + desc + '</p>' +
|
||
'</div>' +
|
||
'</div>' +
|
||
'</div>';
|
||
});
|
||
|
||
container.innerHTML = html;
|
||
})
|
||
.catch(err => {
|
||
console.error('加载失败:', err);
|
||
container.innerHTML = '<p style="text-align:center;width:100%">加载失败</p>';
|
||
});
|
||
});
|
||
</script>
|
||
|
||
<!-- Banner 轮播图样式 -->
|
||
<style>
|
||
.banner-swiper {
|
||
width: 100%;
|
||
}
|
||
|
||
.banner-swiper .swiper-slide {
|
||
height: auto;
|
||
}
|
||
|
||
.banner-swiper .hero-section {
|
||
margin-bottom: 0;
|
||
}
|
||
|
||
.banner-swiper .swiper-pagination {
|
||
bottom: 20px;
|
||
}
|
||
|
||
.banner-swiper .swiper-pagination-bullet {
|
||
background: #333;
|
||
opacity: 0.3;
|
||
width: 10px;
|
||
height: 10px;
|
||
}
|
||
|
||
.banner-swiper .swiper-pagination-bullet-active {
|
||
opacity: 1;
|
||
background: #5864FF;
|
||
}
|
||
|
||
.banner-swiper .swiper-button-next,
|
||
.banner-swiper .swiper-button-prev {
|
||
color: #5864FF;
|
||
width: 40px;
|
||
height: 40px;
|
||
background: rgba(255, 255, 255, 0.8);
|
||
border-radius: 50%;
|
||
box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
|
||
}
|
||
|
||
.banner-swiper .swiper-button-next:after,
|
||
.banner-swiper .swiper-button-prev:after {
|
||
font-size: 18px;
|
||
font-weight: bold;
|
||
}
|
||
|
||
.banner-swiper .swiper-button-next:hover,
|
||
.banner-swiper .swiper-button-prev:hover {
|
||
background: #fff;
|
||
box-shadow: 0 4px 15px rgba(0, 0, 0, 0.15);
|
||
}
|
||
</style>
|
||
|
||
<!-- 新闻卡片样式 -->
|
||
<style>
|
||
.feature-section {
|
||
background-color: #fafafa;
|
||
}
|
||
|
||
.news-card {
|
||
background: #fff;
|
||
border-radius: 8px;
|
||
overflow: hidden;
|
||
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
|
||
transition: transform 0.3s ease, box-shadow 0.3s ease;
|
||
height: 100%;
|
||
display: flex;
|
||
flex-direction: column;
|
||
}
|
||
|
||
.news-card:hover {
|
||
transform: translateY(-4px);
|
||
box-shadow: 0 4px 16px rgba(0, 0, 0, 0.12);
|
||
}
|
||
|
||
.news-thumb-wrap {
|
||
width: 100%;
|
||
height: 160px;
|
||
overflow: hidden;
|
||
}
|
||
|
||
.news-thumb {
|
||
width: 100%;
|
||
height: 100%;
|
||
object-fit: cover;
|
||
}
|
||
|
||
.news-thumb-placeholder {
|
||
width: 100%;
|
||
height: 100%;
|
||
display: flex;
|
||
align-items: center;
|
||
justify-content: center;
|
||
background: #f0f0f0;
|
||
color: #999;
|
||
font-size: 14px;
|
||
}
|
||
|
||
.news-body {
|
||
padding: 16px;
|
||
flex: 1;
|
||
display: flex;
|
||
flex-direction: column;
|
||
}
|
||
|
||
.news-title {
|
||
font-size: 16px;
|
||
font-weight: 600;
|
||
line-height: 1.4;
|
||
margin-bottom: 8px;
|
||
color: #333;
|
||
/* 显示2行,超出省略 */
|
||
display: -webkit-box;
|
||
-webkit-line-clamp: 2;
|
||
-webkit-box-orient: vertical;
|
||
overflow: hidden;
|
||
text-overflow: ellipsis;
|
||
min-height: 44px;
|
||
}
|
||
|
||
.news-desc {
|
||
font-size: 14px;
|
||
line-height: 1.5;
|
||
color: #666;
|
||
margin: 0;
|
||
/* 显示2行,超出省略 */
|
||
display: -webkit-box;
|
||
-webkit-line-clamp: 2;
|
||
-webkit-box-orient: vertical;
|
||
overflow: hidden;
|
||
text-overflow: ellipsis;
|
||
min-height: 42px;
|
||
}
|
||
</style>
|
||
</body>
|
||
|
||
</html> |