This commit is contained in:
toom1996
2025-07-04 16:53:40 +08:00
parent d723be397f
commit 32291f3866
17 changed files with 508 additions and 583 deletions

View File

@ -12,7 +12,13 @@
"@astrojs/node": "^9.2.2",
"@tailwindcss/vite": "^4.1.8",
"astro": "^5.10.1",
"cssnano": "^7.0.7",
"postcss": "^8.5.6",
"swiper": "^11.2.10",
"tailwindcss": "^4.1.8"
},
"devDependencies": {
"@fullhuman/postcss-purgecss": "^7.0.2",
"autoprefixer": "^10.4.21"
}
}

6
postcss.config.cjs Normal file
View File

@ -0,0 +1,6 @@
module.exports = {
plugins: [
// require('autoprefixer'),
// require('cssnano'),
],
};

View File

@ -0,0 +1 @@
<svg t="1751618266477" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5252" width="200" height="200"><path d="M512 1024C229.23 1024 0 794.77 0 512S229.23 0 512 0s512 229.23 512 512-229.23 512-512 512z m193.521-701.437c0.01 0.013 0.025 0.02 0.036 0.034-0.008-0.01-0.027-0.024-0.036-0.032-34.1-22.232-58.708-57.808-66.386-99.27h0.002c-1.661-8.96-2.57-18.182-2.57-27.616H527.742l-0.177 436.135c-1.682 44.941-35.851 81.72-79.69 87.304h-23.172c-11.02-1.41-21.424-4.8-30.875-9.774 2.443 3.385 2.441 3.385-0.002 0-29.115-15.322-49.043-45.845-49.043-80.97 0-50.441 41.04-91.482 91.48-91.482 9.417 0 18.448 1.553 26.99 4.232l0.003-111.099c-8.841-1.205-17.825-1.959-26.994-1.959-110.452 0-200.302 89.86-200.302 200.309 0 67.767 33.856 127.737 85.512 164.003l-0.002-0.003c32.536 22.84 72.11 36.304 114.794 36.304 110.447 0 200.302-89.853 200.302-200.304V407.216c42.682 30.637 94.977 48.689 151.405 48.689V347.08c-30.396 0-58.709-9.037-82.45-24.518z" fill="#333333" p-id="5253"></path></svg>

After

Width:  |  Height:  |  Size: 1.0 KiB

View File

@ -35,92 +35,6 @@ const { path = [] } = Astro.props
<div class="usp-wrap"></div>
<div class="footer-links">
<div class="row">
<div class="col-xl-2 col-lg-4">
<div class="footer-links__block">
<div class="heading footer-links__title heading-06 js-footer-accordion-btn">
购买产品
</div>
<ul class="footer-links__list" role="menubar">
<li class="footer-links__item" role="menuitem">
<a title="手机" data-title="手机" class="footer-links__link" href="/cn/phones/">
手机
</a>
</li>
<li class="footer-links__item" role="menuitem">
<a title="穿戴" data-title="穿戴" class="footer-links__link" href="/cn/wearables/">
穿戴
</a>
</li>
<li class="footer-links__item" role="menuitem">
<a title="鸿蒙电脑" data-title="鸿蒙电脑" class="footer-links__link" href="/cn/harmonyos-computer/">
鸿蒙电脑
</a>
</li>
<li class="footer-links__item" role="menuitem">
<a title="笔记本" data-title="笔记本" class="footer-links__link" href="/cn/laptops/">
笔记本
</a>
</li>
<li class="footer-links__item" role="menuitem">
<a title="显示器" data-title="显示器" class="footer-links__link" href="/cn/monitors/">
显示器
</a>
</li>
<li class="footer-links__item" role="menuitem">
<a title="打印机" data-title="打印机" class="footer-links__link" href="/cn/printers/">
打印机
</a>
</li>
<li class="footer-links__item" role="menuitem">
<a title="平板" data-title="平板" class="footer-links__link" href="/cn/tablets/">
平板
</a>
</li>
<li class="footer-links__item" role="menuitem">
<a title="智慧屏" data-title="智慧屏" class="footer-links__link" href="/cn/visions/">
智慧屏
</a>
</li>
<li class="footer-links__item" role="menuitem">
<a title="耳机音箱" data-title="耳机音箱" class="footer-links__link" href="/cn/audio/">
耳机音箱
</a>
</li>
<li class="footer-links__item" role="menuitem">
<a title="路由器" data-title="路由器" class="footer-links__link" href="/cn/routers/">
路由器
</a>
</li>
<li class="footer-links__item" role="menuitem">
<a title="配件" data-title="配件" class="footer-links__link" href="/cn/accessories/overview/">
配件
</a>
</li>
<li class="footer-links__item" role="menuitem">
<a title="商用产品" data-title="商用产品" class="footer-links__link" href="https://qingyun.huawei.com/products-and-solutions/?utm_medium=referral&utm_source=consumer.huawei.com" target="_blank" rel="noopener noreferrer">
商用产品
</a>
</li>
<li class="footer-links__item" role="menuitem">
<a title="教育商店" data-title="教育商店" class="footer-links__link" href="https://www.vmall.com/portal/activity/index.html?pn=educationcenterpc" target="_blank" rel="noopener noreferrer">
教育商店
</a>
</li>
</ul>
</div>
</div>
<div class="col-xl-2 col-lg-4">
<div class="footer-links__block">
<div class="heading footer-links__title heading-06 js-footer-accordion-btn">服务支持</div>
@ -138,56 +52,11 @@ const { path = [] } = Astro.props
</a>
</li>
<li class="footer-links__item" role="menuitem">
<a title="保修政策" data-title="保修政策" class="footer-links__link" href="/cn/support/warranty-policy/">
保修政策
</a>
</li>
<li class="footer-links__item" role="menuitem">
<a title="上门安装" data-title="上门安装" class="footer-links__link" href="/cn/support/install/">
上门安装
</a>
</li>
<li class="footer-links__item" role="menuitem">
<a title="维修服务" data-title="维修服务" class="footer-links__link" href="/cn/support/break-fix/">
维修服务
</a>
</li>
<li class="footer-links__item" role="menuitem">
<a title="保修期及权益查询" data-title="保修期及权益查询" class="footer-links__link" href="/cn/support/warranty-query/">
保修期及权益查询
</a>
</li>
<li class="footer-links__item" role="menuitem">
<a title="维修备件价格" data-title="维修备件价格" class="footer-links__link" href="/cn/support/sparepart-price/">
维修备件价格
</a>
</li>
<li class="footer-links__item" role="menuitem">
<a title="服务进度查询" data-title="服务进度查询" class="footer-links__link" href="/cn/support/inquiry/">
服务进度查询
</a>
</li>
<li class="footer-links__item" role="menuitem">
<a title={TP2_COLUMN_CONTACT_US} class="footer-links__link" href={TP2_COLUMN_CONTACT_US_URL}>
{TP2_COLUMN_CONTACT_US}
</a>
</li>
<li class="footer-links__item" role="menuitem">
<a title="服务隐私声明" data-title="服务隐私声明" class="footer-links__link" href="/cn/support/service-privacy-notice/">
服务隐私声明
</a>
</li>
<li class="footer-links__item" role="menuitem">
<a title="商用服务" data-title="商用服务" class="footer-links__link" href="https://bsupport.huawei.com/" target="_blank" rel="noopener noreferrer">
商用服务
</a>
</li>
</ul>
</div>
</div>
@ -197,53 +66,15 @@ const { path = [] } = Astro.props
应用与下载
</div>
<ul class="footer-links__list" role="menubar">
<li class="footer-links__item" role="menuitem">
<a title="终端云服务" data-title="终端云服务" class="footer-links__link" href="/cn/mobileservices/">
终端云服务
</a>
</li>
<li class="footer-links__item" role="menuitem">
<a title="华为商城 APP" data-title="华为商城 APP" class="footer-links__link" href="https://m.vmall.com/app/download?cid=1457312" target="_blank" rel="noopener noreferrer">
华为商城 APP
</a>
</li>
<li class="footer-links__item" role="menuitem">
<a title="我的华为 APP " data-title="我的华为 APP " class="footer-links__link" href="/cn/myhuawei-app/">
我的华为 APP
</a>
</li>
<li class="footer-links__item" role="menuitem">
<a title="华为手机助手" data-title="华为手机助手" class="footer-links__link" href="https://consumer.huawei.com/cn/support/hisuite/">
华为手机助手
</a>
</li>
<li class="footer-links__item" role="menuitem">
<a title="华为电脑管家" data-title="华为电脑管家" class="footer-links__link" href="https://consumer.huawei.com/cn/support/pc-manager/">
华为电脑管家
</a>
</li>
<li class="footer-links__item" role="menuitem">
<a title="HarmonyOS 5" data-title="HarmonyOS 5" class="footer-links__link" href="/cn/harmonyos-next/">
HarmonyOS 5
</a>
</li>
<li class="footer-links__item" role="menuitem">
<a title="预置应用公示" data-title="预置应用公示" class="footer-links__link" href="/cn/support/apk/">
预置应用公示
</a>
</li>
<li class="footer-links__item" role="menuitem">
<a title="HUAWEI HiCar" data-title="HUAWEI HiCar" class="footer-links__link" href="/cn/phones/hicar/">
HUAWEI HiCar
</a>
</li>
{
extra?.app_store.map(item => {
return <li class="footer-links__item" role="menuitem">
<a title={`${item.name}下载地址`} rel="nofollow" class="footer-links__link" href={item.url}>
{item.name}
</a>
</li>
})
}
</ul>
</div>
</div>
@ -259,12 +90,6 @@ const { path = [] } = Astro.props
{TP2_COLUMN_NEWS}
</a>
</li>
<li class="footer-links__item" role="menuitem">
<a title="华为活动" class="footer-links__link" href="/cn/press/events/">
华为活动
</a>
</li>
</ul>
</div>
</div>
@ -281,66 +106,11 @@ const { path = [] } = Astro.props
</a>
</li>
<li class="footer-links__item" role="menuitem">
<a title="可持续发展" data-title="可持续发展" class="footer-links__link" href="/cn/sustainability/">
可持续发展
</a>
</li>
<li class="footer-links__item" role="menuitem">
<!-- <li class="footer-links__item" role="menuitem">
<a title="隐私" data-title="隐私" class="footer-links__link" href="/cn/privacy/privacy-statement-huawei/">
隐私
</a>
</li>
<li class="footer-links__item" role="menuitem">
<a title="华为商城" data-title="华为商城" class="footer-links__link" href="https://www.vmall.com/index.html?cid=27629229" target="_blank" rel="noopener noreferrer">
华为商城
</a>
</li>
<li class="footer-links__item" role="menuitem">
<a title="HarmonyOS 开发者" data-title="HarmonyOS 开发者" class="footer-links__link" href="https://developer.huawei.com/consumer/cn/" target="_blank" rel="noopener noreferrer">
HarmonyOS 开发者
</a>
</li>
<li class="footer-links__item" role="menuitem">
<a title="华为云" data-title="华为云" class="footer-links__link" href="https://www.huaweicloud.com/" target="_blank" rel="noopener noreferrer">
华为云
</a>
</li>
<li class="footer-links__item" role="menuitem">
<a title="企业业务" data-title="企业业务" class="footer-links__link" href="https://e.huawei.com/cn/" target="_blank" rel="noopener noreferrer">
企业业务
</a>
</li>
<li class="footer-links__item" role="menuitem">
<a title="运营商网络" data-title="运营商网络" class="footer-links__link" href="https://carrier.huawei.com/cn/" target="_blank" rel="noopener noreferrer">
运营商网络
</a>
</li>
<li class="footer-links__item" role="menuitem">
<a title="华为集团" data-title="华为集团" class="footer-links__link" href="https://www.huawei.com/cn/" target="_blank" rel="noopener noreferrer">
华为集团
</a>
</li>
<li class="footer-links__item" role="menuitem">
<a title="加入华为" data-title="加入华为" class="footer-links__link" href="https://career.huawei.com/reccampportal/campus4_index.html#campus4/content.html" target="_blank" rel="noopener noreferrer">
加入华为
</a>
</li>
<li class="footer-links__item" role="menuitem">
<a title="内容举报" data-title="内容举报" class="footer-links__link
goto-complaint-page" href="/cn/complaint-page/" target="_blank" rel="noopener noreferrer">
内容举报
</a>
</li>
</li> -->
</ul>
</div>
</div>
@ -354,33 +124,10 @@ const { path = [] } = Astro.props
</div>
<p class="contact__text">
<a title="消费者服务热线">消费者服务热线</a>
</p>
<p class="contact__text phone-icon">950800</p>
<p class="contact__text">
<a title="7*24小时 | 普通话">7*24小时 | 普通话</a>
</p>
<p class="contact__text phone-icon">950801</p>
<p class="contact__text">
<a href="https://celia.consumer.huawei.com/official/#/?businessUUID=fe8192189f0a40e8a883ab8bdf1ba8ea" title="在线客服 | 7*24小时" target="_blank" rel="noopener noreferrer">在线客服 | 7*24小时</a>
</p>
</div>
<div class="contact__block col-xl-2 col-md-6">
<div class="heading contact__title heading-06">
线下支持
</div>
<p class="contact__text">
<a href="/cn/support/service-center/" title="服务店查询">服务店查询</a>
</p>
<p class="contact__text">
<a href="/cn/retail/" title="零售店查询">零售店查询</a>
<span>7*24小时服务热线</span>
<div style="font-size: 1.5rem;font-weight: bold;">
<a title="24小时服务热线" href="tel:8988888">888888</a>
</div>
</p>
</div>
@ -422,6 +169,14 @@ const { path = [] } = Astro.props
</a>
</li> : ''
}
{
extra.douyin_offical.address ?
<li class="contact__social-item">
<a title={extra.toutiaohao_offical.name} class="contact__social-link" href={extra.toutiaohao_offical.address} target="_blank" rel="noreferrer">
<Toutiaohao class="icon-lazy" />
</a>
</li> : ''
}
</ul>
</div>
</div>
@ -432,9 +187,15 @@ const { path = [] } = Astro.props
<small class="copyright__text">版权所有 © {config.app_company}
。保留一切权利。{config.app_biling}</small>
</div>
<div class="bottom-links col-xl-5">
<!-- <div class="bottom-links col-xl-5">
<ul class="bottom-links__list">
<li class="bottom-links__item">
<a title="资质主体" class="bottom-links__link" href="/cn/legal/terms-of-use/">
资质主体
</a>
</li>
<li class="bottom-links__item">
<a title="使用条款" class="bottom-links__link" href="/cn/legal/terms-of-use/">
使用条款
@ -453,7 +214,7 @@ const { path = [] } = Astro.props
</a>
</li>
</ul>
</div>
</div> -->
</div>
</div>
</div>

View File

@ -1,7 +1,7 @@
---
import { getConfig } from "../../../utils/config";
import { Image } from 'astro:assets';
import { TP2_COLUMN_CONTACT_US, TP2_COLUMN_CONTACT_US_URL, TP2_COLUMN_NEWS, TP2_COLUMN_NEWS_URL } from "../../../utils/const";
import { TP2_COLUMN_ABOUT_US, TP2_COLUMN_ABOUT_US_URL, TP2_COLUMN_CONTACT_US, TP2_COLUMN_CONTACT_US_URL, TP2_COLUMN_NEWS, TP2_COLUMN_NEWS_URL } from "../../../utils/const";
const config = getConfig(Astro)
---
<div class="v4 header slide-down-corporation nav-v2 scroll-with-screen" id="header-v4" data-component="header" role="navigation">
@ -33,6 +33,10 @@ const config = getConfig(Astro)
<li class="main-nav__item" role="menuitem">
<a title={TP2_COLUMN_CONTACT_US} class="main-nav__link unhover title-hide-v5" href={TP2_COLUMN_CONTACT_US_URL}>{TP2_COLUMN_CONTACT_US}</a>
</li>
<li class="main-nav__item" role="menuitem">
<a title={TP2_COLUMN_ABOUT_US} class="main-nav__link unhover title-hide-v5" href={TP2_COLUMN_ABOUT_US_URL}>{TP2_COLUMN_ABOUT_US}</a>
</li>
</ul>
</div>
<!-- <div class="rg-nav nav-zone">
@ -132,6 +136,7 @@ const config = getConfig(Astro)
.company_name {
font-weight: bold;
margin-left: 0.5rem;
}
}
</style>

View File

@ -2,7 +2,6 @@
import Footer from '../components/template_2/Footer.astro'
import Header from '../components/template_2/Header.astro'
import '../styles/template_2/common-v4-nav-v2.css'
import '../styles/template_2/banner.css'
import '../styles/template_2/style.css'
import '../styles/template_2/nav.css'
const { description = '', title = '', keywords = '', breadcrumb = [] } = Astro.props;

View File

@ -4,11 +4,13 @@ import { getConfig, getExtra } from "../../../../utils/config";
import {
TP2_COLUMN_ABOUT_US,
TP2_COLUMN_ABOUT_US_URL,
TP2_COLUMN_INDEX,
TP2_COLUMN_INDEX_URL,
} from "../../../../utils/const";
const config = getConfig(Astro);
const extra = getExtra('');
const breadcrumb = [
{ title: "主页", url: "/" },
{ title: TP2_COLUMN_INDEX, url: TP2_COLUMN_INDEX_URL },
{ title: TP2_COLUMN_ABOUT_US, url: TP2_COLUMN_ABOUT_US_URL },
];
---
@ -16,64 +18,68 @@ const breadcrumb = [
<Layout
title={TP2_COLUMN_ABOUT_US + ` - ${config.app_name}`}
breadcrumb={breadcrumb}
description={`关于我们 - ${config.app_name}`}
keywords={config.app_keywords}
>
<div id="content" class="main" data-site="中国">
<div>
<!-- 活动与新闻-->
<div class="hcomponent-page-info">
<div class="news-detail-title">
<div class="container-custom fix-p-color">
<h1><span>{extra.about_us.title}{config.app_name}</span></h1>
<main>
<div>
<!-- 活动与新闻-->
<div class="hcomponent-page-info">
<div class="news-detail-title">
<div class="container-custom fix-p-color">
<h1><span>{extra.about_us.title}{config.app_name}</span></h1>
</div>
</div>
</div>
</div>
</div>
<div class="container-custom hcomponent-share-bar">
<div class="container-custom">
<ul class="share-box list-unstyled hasLine">
<li class="line"></li>
</ul>
<div class="container-custom hcomponent-share-bar">
<div class="container-custom">
<ul class="share-box list-unstyled hasLine">
<li class="line"></li>
</ul>
</div>
</div>
</div>
<div >
<div class="hcomponent-news-detail-content">
<div class="news-detail-box container-custom clearfix">
<div class="news-detail-content">
<Fragment set:html={extra.about_us.content} />
<p style="text-align: right;">{config.app_company}</p>
<div >
<div class="hcomponent-news-detail-content">
<div class="news-detail-box container-custom clearfix">
<div class="news-detail-content">
<Fragment set:html={extra.about_us.content} />
<p style="text-align: right;">{config.app_company}</p>
</div>
</div>
</div>
</div>
</div>
</main>
</div>
</Layout>
<style>
.main {
padding-top: 10rem;
h1 {
span {
font-weight: bold;
}
margin-top: 0;
text-align: center;
font-size: 2rem;
}
.container-custom {
margin-left: auto;
margin-right: auto;
padding-left: 15px;
padding-right: 15px
.main {
padding-top: 5rem;
h1 {
span {
font-weight: bold;
}
margin-top: 0;
text-align: center;
font-size: 2rem;
}
p {
color: #666;
font-size: 1em;
line-height: 1.95em;
margin: 0
.container-custom {
margin-left: auto;
margin-right: auto;
padding-left: 15px;
padding-right: 15px
}
}
p {
color: #666;
font-size: 1em;
line-height: 1.95em;
margin: 0
}
@media (max-width:767px) {
.container-custom>.container-custom {
@ -100,14 +106,6 @@ const breadcrumb = [
.share-box.list-unstyled:not(.hasLine){
margin-bottom: 0;
}
.main .hasLine li {
padding: 0 22px;
margin: 0;
background: #fff;
position: relative;
z-index: 2;
margin: 0 -2px;
}
.main .share-box li .wechat-qrcode {
top: 30px;
@ -138,108 +136,8 @@ const breadcrumb = [
margin: 20px auto 0 auto;
}
.news-detail-box {
margin-top: 5rem;
}
@media (min-width: 768px) {
.container {
width:100%
}
}
@media (min-width: 992px) {
body,html {
font-size:16px
}
.container-custom {
max-width: 1430px;
width: 85.652%;
}
.container {
max-width: 1799.136px;
width: 93.705%
}
}
@media (min-width: 1440px) {
body,html {
font-size:17px
}
}
@media (min-width: 1680px) {
body,html {
font-size:18px
}
}
@media (min-width: 1500px) {
.col-ls-4 {
width:33.33333333%
}
.col-ls-3 {
width: 25%
}
}
.news-detail-box .news-detail-content {
text-align: center;
padding: 0 8.5%;
}
.news-detail-box p {
margin-bottom: 20px;
}
.news-detail-box p {
text-align: left;
margin-bottom: 20px;
text-indent: 0em;
word-break: break-word;
word-wrap: break-word;
}
.news-detail-box .content-text {
text-align: left;
}
.news-detail-box .content-text p {
padding: 0;
}
.news-detail-box .news-detail-content {
text-align: center;
padding: 0 8.5%;
}
.news-detail-box .news-detail-content a {
color: #666;
-webkit-text-decoration: underline;
text-decoration: underline;
}
.news-detail-box .news-detail-content a:hover {
color: #000;
}
.news-detail-box .news-detail-content a.link-submit:hover {
color: #fff;
}
.news-detail-box .news-detail-content a.btn-rect {
-webkit-text-decoration: none;
text-decoration: none;
}
@media (min-width: 768px) {
.news-detail-box .news-detail-content>h2 {
padding: 0;
}
.news-detail-box {
margin-top: 5rem;
}
</style>

View File

@ -2,55 +2,44 @@
import Layout from "../../../layouts/Layout_2.astro";
import { Image } from "astro:assets";
import { getConfig, getExtra } from "../../../../utils/config";
import { TP2_COLUMN_CONTACT_US, TP2_COLUMN_CONTACT_US_URL } from "../../../../utils/const";
import {
TP2_COLUMN_CONTACT_US,
TP2_COLUMN_CONTACT_US_URL,
TP2_COLUMN_INDEX,
TP2_COLUMN_INDEX_URL,
} from "../../../../utils/const";
import BaijiahaoLogo from '../../../../public/template_2/baijiahao.svg'
import Toutiaohao from '../../../../public/template_2/toutiaohao.svg'
// import Youxiang from "../../../../public/template_2/contact-us/youxiang.svg";
const extra = getExtra('')
const config = getConfig(Astro);
const breadcrumb = [
{ title: '主页', url: '/' },
{ title: TP2_COLUMN_INDEX, url: TP2_COLUMN_INDEX_URL },
{ title: TP2_COLUMN_CONTACT_US, url: TP2_COLUMN_CONTACT_US_URL }
];
---
<Layout title={TP2_COLUMN_CONTACT_US + ` - ${config.app_name}`} breadcrumb={breadcrumb}>
<main>
<div class="contact-container">
<h1 style="font-size: 5rem;margin-bottom: 5rem;">{extra.contact_us.title}</h1>
<!-- <Fragment set:html={extra.contact_us.content}/> -->
<section class="list-box">
<h2 class="list-title">在线客服</h2>
<ul>
{
extra.contact_us.telephone.map(e => {
return <li class="list-item">
<a href={`tel:${e.number}`}>
<div class="item-content">
<Image height={50} width={50} src="/template_2/contact-us/hotline.png" alt="联系热线"/>
<div class="txt">
<h3 style="margin-left: 1rem;font-weight: bold;">{e.number}</h3>
<h4 style="margin-left: 1rem;">24小时全国热线</h4>
</div>
</div>
<i class="fas fa-chevron-right"></i>
</a>
</li>
})
}
</ul>
<h2 class="list-title">联系邮箱</h2>
<ul>
<Layout
title={TP2_COLUMN_CONTACT_US + ` - ${config.app_name}`}
description={`联系我们 - ${config.app_name}`}
keywords={config.app_keywords}
breadcrumb={breadcrumb}
>
<main>
<div class="contact-container">
<h1 style="font-size: 5rem;margin-bottom: 5rem;">{extra.contact_us.title}</h1>
<!-- <Fragment set:html={extra.contact_us.content}/> -->
<section class="list-box">
<h2 class="list-title">在线客服</h2>
<ul>
{
extra.contact_us.email.map(e => {
extra.contact_us.telephone.map(e => {
return <li class="list-item">
<a href={`tel:${e.address}`}>
<a href={`tel:${e.number}`}>
<div class="item-content">
<Image height={50} width={50} src="/template_2/contact-us/hotline.png" alt="联系邮箱"/>
<Image height={50} width={50} src="/template_2/contact-us/hotline.png" alt="联系热线"/>
<div class="txt">
<h3 style="margin-left: 1rem;font-weight: bold;">{e.address}</h3>
<h4 style="margin-left: 1rem;"></h4>
<h3 style="margin-left: 1rem;font-weight: bold;">{e.number}</h3>
<h4 style="margin-left: 1rem;">24小时全国热线</h4>
</div>
</div>
<i class="fas fa-chevron-right"></i>
@ -58,70 +47,90 @@ const breadcrumb = [
</li>
})
}
</ul>
</ul>
<h2 class="list-title">官方媒体平台</h2>
<ul>
{
extra.weibo_offical.address ?
<li class="list-item">
<a href={extra.weibo_offical.address} target="blank">
<div class="item-content">
<span class="icon-lazy font-ico-weibo" data-name="font-ico-weibo"></span>
<div class="txt">
<h3>{extra.weibo_offical.name}</h3>
<h2 class="list-title">联系邮箱</h2>
<ul>
{
extra.contact_us.email.map(e => {
return <li class="list-item">
<a href={`tel:${e.address}`}>
<div class="item-content">
<Image height={50} width={50} src="/template_2/contact-us/hotline.png" alt="联系邮箱"/>
<div class="txt">
<h3 style="margin-left: 1rem;font-weight: bold;">{e.address}</h3>
<h4 style="margin-left: 1rem;"></h4>
</div>
</div>
<i class="fas fa-chevron-right"></i>
</a>
</li>
})
}
</ul>
<h2 class="list-title">官方媒体平台</h2>
<ul>
{
extra.weibo_offical.address ?
<li class="list-item">
<a href={extra.weibo_offical.address} target="blank">
<div class="item-content">
<span class="icon-lazy font-ico-weibo" data-name="font-ico-weibo"></span>
<div class="txt">
<h3>{extra.weibo_offical.name}</h3>
</div>
</div>
</div>
<i class="fas fa-chevron-right"></i>
</a>
</li> : ''
}
{
extra.gongzhonghao_offical.address ?
<li class="list-item">
<a href={extra.gongzhonghao_offical.address} target="blank">
<div class="item-content">
<span class="icon-lazy font-ico-weixin" data-name="font-ico-weixin"></span>
<div class="txt">
<h3>{extra.gongzhonghao_offical.name}</h3>
<i class="fas fa-chevron-right"></i>
</a>
</li> : ''
}
{
extra.gongzhonghao_offical.address ?
<li class="list-item">
<a href={extra.gongzhonghao_offical.address} target="blank">
<div class="item-content">
<span class="icon-lazy font-ico-weixin" data-name="font-ico-weixin"></span>
<div class="txt">
<h3>{extra.gongzhonghao_offical.name}</h3>
</div>
</div>
</div>
<i class="fas fa-chevron-right"></i>
</a>
</li> : ''
}
{
extra.baijiahao_offical.address ?
<li class="list-item">
<a href={extra.baijiahao_offical.address} target="blank">
<div class="item-content">
<BaijiahaoLogo class="icon-lazy" />
<div class="txt">
<h3>{extra.baijiahao_offical.name}</h3>
<i class="fas fa-chevron-right"></i>
</a>
</li> : ''
}
{
extra.baijiahao_offical.address ?
<li class="list-item">
<a href={extra.baijiahao_offical.address} target="blank">
<div class="item-content">
<BaijiahaoLogo class="icon-lazy" />
<div class="txt">
<h3>{extra.baijiahao_offical.name}</h3>
</div>
</div>
</div>
<i class="fas fa-chevron-right"></i>
</a>
</li> : ''
}
{
extra.toutiaohao_offical.address ?
<li class="list-item">
<a href={extra.toutiaohao_offical.address} target="blank">
<div class="item-content">
<Toutiaohao class="icon-lazy"/>
<div class="txt">
<h3>{extra.toutiaohao_offical.name}</h3>
<i class="fas fa-chevron-right"></i>
</a>
</li> : ''
}
{
extra.toutiaohao_offical.address ?
<li class="list-item">
<a href={extra.toutiaohao_offical.address} target="blank">
<div class="item-content">
<Toutiaohao class="icon-lazy"/>
<div class="txt">
<h3>{extra.toutiaohao_offical.name}</h3>
</div>
</div>
</div>
<i class="fas fa-chevron-right"></i>
</a>
</li> : ''
}
</ul>
</section>
</div>
</main>
<i class="fas fa-chevron-right"></i>
</a>
</li> : ''
}
</ul>
</section>
</div>
</main>
</Layout>
<style>

View File

@ -13,7 +13,12 @@ const breadcrumb = [{
}]
---
<Layout title={`${config.app_name}`} breadcrumb={breadcrumb} description={config.app_description} keywords={config.app_keywords}>
<Layout
title={`${config.app_name}`}
description={config.app_description}
keywords={config.app_keywords}
breadcrumb={breadcrumb}
>
<div class="v4 header-placeholder nav-v2" id="header-placeholder"></div>
<main class="content-v4">
<div>
@ -32,14 +37,14 @@ const breadcrumb = [{
<div class="product-tabs__heading">
<div class="product-tabs__title body-medium">
<a title={config.app_name} href="/" class="product-link product-link__active" data-title="华为阅读">{config.app_name}</a>
<a class="btn erweimaBTN a-btn-install-ga" href={extra.app_download} target="_blank">点击下载
<a class="btn erweimaBTN a-btn-install-ga" href={extra.app_download} target="_blank" rel="nofollow">点击下载
<ImageXiazai style="margin-left:10px;width: 11px;height: 11px;" alt="下载按钮" />
</a>
</div>
<div class="product-tabs__links-container" style="margin-right: -20px;">
<ul class="product-tabs__links">
<li class="product-tabs__links-item">
<a class="btn erweimaBTN a-btn-install-ga" href={extra.app_download} style="position: relative;">
<a class="btn erweimaBTN a-btn-install-ga" href={extra.app_download} style="position: relative;" rel="nofollow">
点击下载<ImageXiazai style="margin-left:10px;width: 11px;height: 11px;" alt="下载按钮" />
</a>
</li>

View File

@ -2,20 +2,25 @@
import Layout from '../../../layouts/Layout_2.astro';
import { newsIndex } from '../../../../utils/rpc';
import { getConfig } from '../../../../utils/config';
import { TP2_COLUMN_NEWS, TP2_COLUMN_NEWS_URL } from '../../../../utils/const';
import { TP2_COLUMN_NEWS, TP2_COLUMN_NEWS_URL, TP2_COLUMN_INDEX, TP2_COLUMN_INDEX_URL } from '../../../../utils/const';
const config = getConfig(Astro)
const {code, data} = await newsIndex(config.id);
const breadcrumb = [
{
title: '主页',
url: '/'
title: TP2_COLUMN_INDEX,
url: TP2_COLUMN_INDEX_URL
}, {
title: TP2_COLUMN_NEWS,
url: TP2_COLUMN_NEWS_URL
}
]
---
<Layout title={TP2_COLUMN_NEWS + `- ${config.app_name}`} breadcrumb={breadcrumb}>
<Layout
title={TP2_COLUMN_NEWS + `- ${config.app_name}`}
description={`新闻专栏 - ${config.app_name}`}
keywords={config.app_keywords}
breadcrumb={breadcrumb}
>
<main class="v4 main page-news">
<div class="news-list-component">
<div class="v4 h05-hero-text-only no-margin centered" data-component="h05-hero-text-only" data-video-width="0" data-video-height="0">

View File

@ -1,14 +1,24 @@
---
import Layout from "../../../layouts/Layout_2.astro";
import { getConfig } from "../../../../utils/config";
import { TP2_COLUMN_PROTECT, TP2_COLUMN_PROTECT_URL } from "../../../../utils/const";
import {
TP2_COLUMN_PROTECT,
TP2_COLUMN_PROTECT_URL,
TP2_COLUMN_INDEX,
TP2_COLUMN_INDEX_URL,
} from "../../../../utils/const";
const config = getConfig(Astro);
const breadcrumb = [
{ title: '主页', url: '/' },
{ title: TP2_COLUMN_INDEX, url: TP2_COLUMN_INDEX_URL },
{ title: TP2_COLUMN_PROTECT, url: TP2_COLUMN_PROTECT_URL }
];
---
<Layout title={TP2_COLUMN_PROTECT + ` - ${config.app_name}`} breadcrumb={breadcrumb}>
<Layout
title={TP2_COLUMN_PROTECT + ` - ${config.app_name}`}
description={`未成年人及老年人保护 - ${config.app_name}`}
keywords={config.app_keywords}
breadcrumb={breadcrumb}
>
<main>
<article id="protect" class="protect-article">
<header>

View File

@ -4,16 +4,20 @@ import { getConfig, getExtra } from "../../../../utils/config";
import {
TP2_COLUMN_ABOUT_US,
TP2_COLUMN_ABOUT_US_URL,
TP2_COLUMN_INDEX,
TP2_COLUMN_INDEX_URL,
} from "../../../../utils/const";
const config = getConfig(Astro);
const extra = getExtra('');
const breadcrumb = [
{ title: "主页", url: "/" },
{ title: TP2_COLUMN_INDEX, url: TP2_COLUMN_INDEX_URL },
{ title: TP2_COLUMN_ABOUT_US, url: TP2_COLUMN_ABOUT_US_URL },
];
---
<Layout
title={TP2_COLUMN_ABOUT_US + ` - ${config.app_name}`}
description={`退款条例 - ${config.app_name}`}
keywords={config.app_keywords}
breadcrumb={breadcrumb}
>
<div id="content" class="main" data-site="中国">
@ -47,7 +51,6 @@ const breadcrumb = [
</div>
</Layout>
<style>
.main {
padding-top: 10rem;
h1 {

View File

@ -1,48 +0,0 @@
.v4.h06-in-page-banner .banner-item{position:relative;margin-bottom:80px}
.v4.h06-in-page-banner .banner-block{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;height:736px;background-color:#ddd;padding:3vw 5.3vw 80px;margin-bottom:16px}
.v4.h06-in-page-banner .banner-block__in{width:58%;display:flex;display:-webkit-flex;flex-direction:column;justify-content:center}
.v4.h06-in-page-banner .banner-block__heading{letter-spacing:1px;line-height:1.09;margin-bottom:20px;font-size:64px;max-height:146px;overflow:hidden}
.v4.h06-in-page-banner .banner-block__text{margin-bottom:40px;font-weight:700;font-size:18px;max-height:50px;overflow:hidden}
@media only screen and (min-width:1920px){.v4.h06-in-page-banner .banner-block__text{font-size:24px;line-height:1.2;max-height:58px}
}
@media only screen and (min-width:1200px) and (max-width:1600px){.v4.h06-in-page-banner .banner-block__text{margin-bottom:20px}
}
.v4.h06-in-page-banner .banner-block--centered{-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}
.v4.h06-in-page-banner .banner-block--centered .banner-block__in{text-align:center}
.v4.h06-in-page-banner .banner-block--right{-webkit-box-pack:end;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end}
.v4.h06-in-page-banner .banner-block--dark-theme{color:#fff}
.v4.h06-in-page-banner .banner-block--dark-theme .banner-block__heading,.v4.h06-in-page-banner .banner-block--dark-theme .banner-block__text{color:#fff}
.v4.h06-in-page-banner .banner-block--dark-theme .banner-block__btn{background-color:#fff;color:#000;border-color:#fff}
.v4.h06-in-page-banner .banner-item__text{font-size:12px;font-weight:400;line-height:1.6;color:#000;max-width:880px;display:none}
.v4.h06-in-page-banner .banner-block--image{background-position:center center;background-repeat:no-repeat;background-size:cover}
@media only screen and (max-width:1199.98px){.app-v4 .v4.h06-in-page-banner:last-of-type{margin-bottom:0}
.app-v4 .v4.h06-in-page-banner:last-of-type .banner-item{margin-bottom:0}
.v4.h06-in-page-banner{margin-bottom:40px}
.v4.h06-in-page-banner .banner-block--right{-webkit-box-pack:start;-webkit-justify-content:flex-start;-ms-flex-pack:start;justify-content:flex-start}
.v4.h06-in-page-banner .container{padding:0}
.v4.h06-in-page-banner .banner-item__text{padding:0 20px}
.v4.h06-in-page-banner .banner-item{margin-bottom:64px}
.v4.h06-in-page-banner .banner-block{padding:40px 20px;height:640px}
.v4.h06-in-page-banner .banner-block__in{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column}
.v4.h06-in-page-banner .banner-block__heading{font-size:48px;margin-bottom:20px;max-height:110px}
.v4.h06-in-page-banner .banner-block__text{margin-bottom:28px}
.v4.h06-in-page-banner .banner-block__btns{margin-bottom:10px}
.v4.h06-in-page-banner .banner-block__in{justify-content:flex-start;max-width:860px;width:auto}
}
@media only screen and (width:1600px){.v4.h06-in-page-banner .banner-block{height:690px}
}
@media only screen and (min-width:1200px) and (max-width:1599.98px){.v4.h06-in-page-banner .banner-block__heading{font-size:48px;max-height:110px}
.v4.h06-in-page-banner .banner-block{height:45vw}
}
@media only screen and (min-width:922px) and (max-width:1199.98px){.v4.h06-in-page-banner .banner-block{height:840px}
}
@media only screen and (min-width:768px) and (max-width:921px){.v4.h06-in-page-banner .banner-block{height:740px}
.v4.h06-in-page-banner .banner-block__heading{font-size:30px;max-height:66px}
.v4.h06-in-page-banner .banner-block__text{font-size:16px;max-height:50px}
}
@media only screen and (max-width:767px){.v4.h06-in-page-banner .banner-block{height:640px}
}
@media only screen and (max-width:767.98px){.v4.h06-in-page-banner .banner-block__heading{font-size:30px;max-height:66px;margin-bottom:10px}
.v4.h06-in-page-banner .banner-block__text{font-size:14px;max-height:72px;margin-bottom:12px}
.v4.h06-in-page-banner .banner-block__in{max-width:100%}
}

View File

@ -5773,7 +5773,7 @@ html[dir="rtl"] .second-navigation-new-version .product-category-name.active::af
}
.v4.n09-footer .footer-links__title {
margin-bottom: 46px
margin-bottom: 30px
}
.v4.n09-footer .footer-links__item {
@ -9251,7 +9251,6 @@ html[dir=rtl] .ip-jump-wrap .ip-jump-go {
}
@media only screen and (max-width: 767.98px) {
.main-navigation.nav-v2 .v4.n03-expanded-support .dropdown__order {
margin:0 -16px 15px
}

View File

@ -1,5 +1,5 @@
import type { IWebsiteConfig } from "./rpc";
import {EXTRA_DEFAULT, EXTRA_HONGTIXIANYUE} from './extra.ts'
import {EXTRA_DEFAULT, EXTRA_HONGTIXIANYUE, EXTRA_MINGWUZHITANG, EXTRA_ZHISHIHUISHENG} from './extra.ts'
export function getConfig(Astro: any):IWebsiteConfig
{
@ -11,6 +11,10 @@ export function getExtra(extraTag: string = '')
{
if (extraTag == 'HONGTIXIANYUE') {
return EXTRA_HONGTIXIANYUE;
} else if (extraTag == 'ZHISHIHUISHENG') {
return EXTRA_ZHISHIHUISHENG;
} else if (extraTag == 'ZHISHIHUISHENG') {
return EXTRA_MINGWUZHITANG;
}
return EXTRA_DEFAULT;

File diff suppressed because one or more lines are too long

View File

@ -75,7 +75,7 @@ export async function newsDetail(id:string):Promise<result<InewsDetail>>{
// 网站配置
export interface IWebsiteConfig {
id: string
id: number
app_extra_tag: string
app_name: string
app_description: string