feat(design): 彻底去除全站AI味:排版全面升级为大厂左对齐架构,文案全量替换为实务工程语言

这个提交包含在:
wikiboss
2026-10-08 17:50:26 +08:00
父节点 1936809e23
当前提交 2a4ac0a798
共有 8 个文件被更改,包括 318 次插入 和 152 次删除

查看文件

@@ -8,68 +8,68 @@
<div class="nhc-carousel" id="nhcHeroCarousel">
<div class="nhc-carousel-track">
<!-- 幻灯片 1:纳海川 · 领航篇(总览与数字底座) -->
<!-- 幻灯片 1:领航篇(企业级软件定制与技术中台) -->
<div class="nhc-carousel-slide nhc-slide-theme-1 active" data-slide-index="0">
<div class="nhc-container">
<div class="nhc-hero-content">
<div class="nhc-hero-badge">
<span class="nhc-seal">纳海川</span>
<span class="nhc-hero-badge-text">现代企业数字化底座与智能体定制专家</span>
<span class="nhc-seal">企业级开发</span>
<span class="nhc-hero-badge-text">贵阳纳海川科技 · 专注定制开发与数字化技术中台</span>
</div>
<h1 class="nhc-hero-title">
海纳百川以成巨流 <span class="highlight">聚智能</span>以启新元
专注企业级软件定制开发<br>让数字化系统真正驱动业务增长
</h1>
<p class="nhc-hero-subtitle">
纳海川专注于为政企与高成长型企业构筑稳固的业务技术中台、全端移动生态与垂直领域 AI 智能体体系,融合东方秩序美学与现代软件工程标准,赋能实体业务深层数字化跃升。
立足西南,服务全国。纳海川提供全流程软件定制研发、全端移动应用与小程序开发、私有化 AI 智能体应用,以及成熟的商业商城与进销存管理系统。坚持自主研发,白盒交付完整源码。
</p>
<div class="nhc-hero-cta">
<a href="#contact" class="nhc-btn nhc-btn-primary nhc-btn-lg">
<span>预约专家咨询</span>
<span>预约架构师评估</span>
<svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M5 12h14M12 5l7 7-7 7"/></svg>
</a>
<a href="#products" class="nhc-btn nhc-btn-outline nhc-btn-lg">
<span>浏览核心产品</span>
<span>浏览成熟产品</span>
</a>
</div>
<div class="nhc-hero-metrics">
<div class="nhc-metric-item">
<div class="nhc-metric-val">99.8<sub>%</sub></div>
<div class="nhc-metric-label">项目按期高质量交付率</div>
<div class="nhc-metric-val">10<sub>年+</sub></div>
<div class="nhc-metric-label">企业软件工程技术沉淀</div>
</div>
<div class="nhc-metric-item">
<div class="nhc-metric-val">50<sub>+</sub></div>
<div class="nhc-metric-label">核心自主软件著作权资产</div>
<div class="nhc-metric-label">国家软件著作权资产</div>
</div>
<div class="nhc-metric-item">
<div class="nhc-metric-val">200<sub>+</sub></div>
<div class="nhc-metric-label">政企与各行业标杆客户</div>
<div class="nhc-metric-label">标杆政企与行业客户</div>
</div>
<div class="nhc-metric-item">
<div class="nhc-metric-val">10<sub>+</sub></div>
<div class="nhc-metric-label">年企业级软件工程沉淀</div>
<div class="nhc-metric-val">100<sub>%</sub></div>
<div class="nhc-metric-label">源码交付 · 自主可控</div>
</div>
</div>
</div>
</div>
</div>
<!-- 幻灯片 2:核心服务 · 匠造篇(软件开发与全端定制) -->
<!-- 幻灯片 2:软件开发篇(全栈中台与移动端定制) -->
<div class="nhc-carousel-slide nhc-slide-theme-2" data-slide-index="1">
<div class="nhc-container">
<div class="nhc-hero-content">
<div class="nhc-hero-badge">
<span class="nhc-seal">精工匠造</span>
<span class="nhc-hero-badge-text">企业级中台 · 全端移动生态 · 源码交付</span>
<span class="nhc-seal">全栈定制</span>
<span class="nhc-hero-badge-text">高可用微服务架构 · 原生APP · 微信小程序全生态</span>
</div>
<h1 class="nhc-hero-title">
经纬立骨铸基石 <span class="highlight">精工致远</span>赢未来
按需定制开发 · 源码完整移交<br>支持专有云与内网私有化部署
</h1>
<p class="nhc-hero-subtitle">
从高并发微服务底层中台到全端原生/跨端移动应用与微信小程序生态,纳海川提供全流程测试驱动开发与金融级安全私有化部署。
拒绝低质套壳代码。采用主流高可用微服务与现代化跨端架构,从业务需求调研、UI交互原型设计、TDD测试驱动研发到安全渗透测试,为企业打造高稳定性、高扩展性的核心业务系统。
</p>
<div class="nhc-hero-cta">
<a href="{:addon_url('official/web.official_product/list',[':pid'=>19,':sid'=>19])}" class="nhc-btn nhc-btn-primary nhc-btn-lg">
<span>探索软件开发服务</span>
<span>了解软件开发能力</span>
<svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M5 12h14M12 5l7 7-7 7"/></svg>
</a>
<a href="{:addon_url('official/web.official_case_show/list',[':pid'=>14,':sid'=>14])}" class="nhc-btn nhc-btn-outline nhc-btn-lg">
@@ -82,43 +82,43 @@
<div class="nhc-metric-label">核心接口微服务平均响应</div>
</div>
<div class="nhc-metric-item">
<div class="nhc-metric-val">100<sub>%</sub></div>
<div class="nhc-metric-label">工程自主可控与源码移交</div>
<div class="nhc-metric-val">千万级</div>
<div class="nhc-metric-label">分布式并发扩展架构</div>
</div>
<div class="nhc-metric-item">
<div class="nhc-metric-val">60<sub>fps</sub></div>
<div class="nhc-metric-label">全端移动界面丝滑交互体验</div>
<div class="nhc-metric-val">全端互通</div>
<div class="nhc-metric-label">iOS / Android / 微信小程序</div>
</div>
<div class="nhc-metric-item">
<div class="nhc-metric-val">ISO<sub>9001</sub></div>
<div class="nhc-metric-label">标准化研发质量严苛审计</div>
<div class="nhc-metric-label">严格研发质量审计体系</div>
</div>
</div>
</div>
</div>
</div>
<!-- 幻灯片 3:前沿科技 · 智元篇(企业级 AI 智能体应用) -->
<!-- 幻灯片 3:智能体篇(企业级私域 AI 智能体与知识库) -->
<div class="nhc-carousel-slide nhc-slide-theme-3" data-slide-index="2">
<div class="nhc-container">
<div class="nhc-hero-content">
<div class="nhc-hero-badge">
<span class="nhc-seal">智能跃升</span>
<span class="nhc-hero-badge-text">企业私域大模型 · 多智能体协同 · RAG 知识库</span>
<span class="nhc-seal">AI 智能体</span>
<span class="nhc-hero-badge-text">企业私有大模型 · 垂直 RAG 知识库 · 多 Agent 协同</span>
</div>
<h1 class="nhc-hero-title">
格物致知启新智 <span class="highlight">人机协同</span>创非凡
私有化部署企业级 AI 智能体<br>深度打通业务流与规章知识库
</h1>
<p class="nhc-hero-subtitle">
深入垂直行业业务一线,将大语言模型与企业专属知识库深度结合,自主编排业务工作流,打造安全可控的高阶企业级智能体(Agent)。
基于私有化大语言模型与向量数据库检索技术,将企业制度规范、政策法规与现有业务数据库打通。数据在企业内网物理隔离部署,绝不上传外部公网,实现高精度业务问答与初审自动化。
</p>
<div class="nhc-hero-cta">
<a href="#contact" class="nhc-btn nhc-btn-primary nhc-btn-lg">
<span>预约智能体场景演示</span>
<span>预约智能体方案研讨</span>
<svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M5 12h14M12 5l7 7-7 7"/></svg>
</a>
<a href="#services" class="nhc-btn nhc-btn-outline nhc-btn-lg">
<span>了解智能体能力</span>
<span>查看技术架构</span>
</a>
</div>
<div class="nhc-hero-metrics">
@@ -127,61 +127,61 @@
<div class="nhc-metric-label">私域知识库精准向量检索</div>
</div>
<div class="nhc-metric-item">
<div class="nhc-metric-val">85<sub>%</sub></div>
<div class="nhc-metric-label">重复业务工单自动解决率</div>
<div class="nhc-metric-val">94.6<sub>%</sub></div>
<div class="nhc-metric-label">业务合规审核准确率</div>
</div>
<div class="nhc-metric-item">
<div class="nhc-metric-val">Multi<sub>Agent</sub></div>
<div class="nhc-metric-label">多智能体分工协同调度体系</div>
<div class="nhc-metric-val">物理隔离</div>
<div class="nhc-metric-label">企业内网部署 · 零数据外泄</div>
</div>
<div class="nhc-metric-item">
<div class="nhc-metric-val">0<sub>泄露</sub></div>
<div class="nhc-metric-label">数据私有化本地隔离部署</div>
<div class="nhc-metric-val">多Agent</div>
<div class="nhc-metric-label">工作流自主分工与调度</div>
</div>
</div>
</div>
</div>
</div>
<!-- 幻灯片 4:产品矩阵 · 赋能篇(四大核心成熟产品) -->
<!-- 幻灯片 4:产品矩阵篇(商城、收银、进销存、SaaS系统) -->
<div class="nhc-carousel-slide nhc-slide-theme-4" data-slide-index="3">
<div class="nhc-container">
<div class="nhc-hero-content">
<div class="nhc-hero-badge">
<span class="nhc-seal">矩阵赋能</span>
<span class="nhc-hero-badge-text">商城 · 收银 · 进销存 · 云原生 SaaS 平台</span>
<span class="nhc-seal">商业产品</span>
<span class="nhc-hero-badge-text">商城系统 · 智能收银 · 进销存 ERP · 云原生 SaaS</span>
</div>
<h1 class="nhc-hero-title">
积厚流光成重器 <span class="highlight">矩阵赋能</span>拓坦途
开箱即用或深度二次开发<br>支撑企业全流程商业经营与供应链
</h1>
<p class="nhc-hero-subtitle">
历经千万级真实交易峰值淬炼的标准模块化产品体系,兼具即开即用与定制灵活性,支持公有云 SaaS 订阅与专有私有化买断部署。
历经千万级真实交易峰值考验的标准模块化产品体系。支持多商户分销清算、断网离线收银与多端硬件联动、多仓库多批次进销存盘点,支持公有云订阅与专有云源码买断部署。
</p>
<div class="nhc-hero-cta">
<a href="#products" class="nhc-btn nhc-btn-primary nhc-btn-lg">
<span>申请全系统在线演示</span>
<span>申请全功能在线演示</span>
<svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M5 12h14M12 5l7 7-7 7"/></svg>
</a>
<a href="#contact" class="nhc-btn nhc-btn-outline nhc-btn-lg">
<span>咨询部署方案</span>
<span>咨询部署与报价</span>
</a>
</div>
<div class="nhc-hero-metrics">
<div class="nhc-metric-item">
<div class="nhc-metric-val">4<sub>大</sub></div>
<div class="nhc-metric-label">核心商业产品开箱即用</div>
<div class="nhc-metric-val">4<sub>大系统</sub></div>
<div class="nhc-metric-label">成熟商业产品矩阵覆盖</div>
</div>
<div class="nhc-metric-item">
<div class="nhc-metric-val">10W<sub>+</sub></div>
<div class="nhc-metric-label">日交易订单平稳支撑能力</div>
<div class="nhc-metric-label">单日交易订单稳定承载</div>
</div>
<div class="nhc-metric-item">
<div class="nhc-metric-val">软硬<sub>一体</sub></div>
<div class="nhc-metric-label">智能收银与扫码硬件全兼容</div>
<div class="nhc-metric-val">软硬一体</div>
<div class="nhc-metric-label">收银机/打印机/扫码枪兼容</div>
</div>
<div class="nhc-metric-item">
<div class="nhc-metric-val">99.99<sub>%</sub></div>
<div class="nhc-metric-label">云原生多租户金融级可用性</div>
<div class="nhc-metric-label">生产级高可用系统保障</div>
</div>
</div>
</div>
@@ -230,7 +230,7 @@
<span class="nhc-seal">服务矩阵</span>
<span class="nhc-tag-text">ENGINEERING CAPABILITIES</span>
</div>
<h2 class="nhc-section-title">聚焦三大核心服务 · 铸造数字生产力</h2>
<h2 class="nhc-section-title">聚焦核心研发能力 · 支撑企业数字化转型</h2>
<p class="nhc-section-desc">
紧密围绕企业实际业务痛点,提供从底层中台架构、全场景移动端触点到前沿 AI 智能体的全栈定制研发服务。
</p>
@@ -317,7 +317,7 @@
<span class="nhc-seal">核心产品</span>
<span class="nhc-tag-text">STANDARDIZED SOLUTIONS</span>
</div>
<h2 class="nhc-section-title">四大成熟产品矩阵 · 即开即用的商业驱动力</h2>
<h2 class="nhc-section-title">成熟商业产品体系 · 支撑全渠道高效运营</h2>
<p class="nhc-section-desc">
标准化模块架构,兼具高灵活性与成熟稳定性,全面支持公有云 SaaS 订阅与专有私有化买断部署。
</p>
@@ -454,7 +454,7 @@
<span class="nhc-seal">标杆案例</span>
<span class="nhc-tag-text">PROVEN OUTCOMES</span>
</div>
<h2 class="nhc-section-title">精选实践成果 · 严谨数据验证</h2>
<h2 class="nhc-section-title">标杆项目成果 · 经受高并发与复杂业务考验</h2>
<p class="nhc-section-desc">
我们以扎实的工程交付标准,为各行业客户交付经得起业务考验的数字化解决方案。
</p>
@@ -614,9 +614,9 @@
<span class="nhc-seal">交付体系</span>
<span class="nhc-tag-text">STANDARD METHODOLOGY</span>
</div>
<h2 class="nhc-section-title">五步严谨工程法 · 全生命周期守护</h2>
<h2 class="nhc-section-title">标准化软件交付流程 · 严格把控每个交付节点</h2>
<p class="nhc-section-desc">
恪守现代中式工匠规矩与敏捷工程标准,每一步都有明确的标准产出与质量验收节点。
遵循企业级软件工程规范与敏捷开发标准,从需求调研到持续运维提供全周期质量把控。
</p>
<div class="nhc-line-divider"><span></span></div>
</div>
@@ -625,45 +625,45 @@
<!-- 步骤 1 -->
<div class="nhc-process-card">
<div class="nhc-process-step-num">01</div>
<h4 class="nhc-process-step-title">需求深度研判</h4>
<h4 class="nhc-process-step-title">业务需求调研与方案论证</h4>
<p class="nhc-process-step-desc">
格物致知,派驻资深架构师深入业务一线,全流程梳理业务痛点,产出详尽需求规格蓝图。
资深架构师与业务专家深入一线,厘清业务痛点与技术边界,输出详尽的需求规格说明书与技术方案可行性报告。
</p>
</div>
<!-- 步骤 2 -->
<div class="nhc-process-card">
<div class="nhc-process-step-num">02</div>
<h4 class="nhc-process-step-title">架构严谨立骨</h4>
<h4 class="nhc-process-step-title">高可用微服务架构设计</h4>
<p class="nhc-process-step-desc">
经纬分明,制定高可用系统拓扑、高安全数据底座、微服务治理及应对极端峰值的应急预案。
系统化规划微服务划分、分布式拓扑、数据库读写分离与缓存策略,制定完备的高并发应对与容灾应急预案。
</p>
</div>
<!-- 步骤 3 -->
<div class="nhc-process-card">
<div class="nhc-process-step-num">03</div>
<h4 class="nhc-process-step-title">敏捷测试驱动</h4>
<h4 class="nhc-process-step-title">测试驱动开发与敏捷编码</h4>
<p class="nhc-process-step-desc">
精工细琢,严格遵循 TDD 模式与 CI/CD 自动化流水线,代码评审严苛,确保无缺陷交付。
严格执行测试驱动开发(TDD)规范,落实代码双人评审与 CI/CD 持续集成流水线,杜绝带病代码上线。
</p>
</div>
<!-- 步骤 4 -->
<div class="nhc-process-card">
<div class="nhc-process-step-num">04</div>
<h4 class="nhc-process-step-title">高压安全审计</h4>
<h4 class="nhc-process-step-title">全链路压测与安全渗透测试</h4>
<p class="nhc-process-step-desc">
严审磐石,全路径模拟超负荷并发压力测试,配合权威渗透扫描与合规校验,坚固如磐。
模拟真实生产环境的峰值压力测试,执行接口安全渗透扫描与漏洞合规审计,确保系统坚固可靠。
</p>
</div>
<!-- 步骤 5 -->
<div class="nhc-process-card">
<div class="nhc-process-step-num">05</div>
<h4 class="nhc-process-step-title">私有化与维保</h4>
<h4 class="nhc-process-step-title">私有化部署与长期技术运维</h4>
<p class="nhc-process-step-desc">
笃行护航,专业工程师实地或专网部署交付,提供完善运维赋能培训与 7x24 持续演进支持。
专业团队提供专有云/内网物理隔离部署,全量交付白盒源码与技术文档,配备专属团队与 SLA 响应支持。
</p>
</div>
</div>
@@ -677,10 +677,10 @@
<div class="nhc-container">
<div class="nhc-section-header">
<div class="nhc-section-tag">
<span class="nhc-seal">信赖之选</span>
<span class="nhc-seal">客户原声</span>
<span class="nhc-tag-text">VOICE OF PARTNERS</span>
</div>
<h2 class="nhc-section-title">客户信赖之选 · 见证长期价值同行</h2>
<h2 class="nhc-section-title">客户真实评价 · 见证系统上线后的业务价值</h2>
<p class="nhc-section-desc">
我们珍视每一次托付,用稳定运行的系统与专业的态度赢得长期战略合作伙伴的由衷认可。
</p>
@@ -753,8 +753,8 @@
<div class="nhc-container">
<div class="nhc-cta-inner">
<div class="nhc-cta-content">
<span class="nhc-seal" style="background: rgba(255, 255, 255, 0.15); border-color: rgba(255, 255, 255, 0.4); color: #FFFFFF; margin-bottom: 12px;">立即携手</span>
<h2 class="nhc-cta-title">准备好开启新一代数字化与智能化升级了吗?</h2>
<span class="nhc-seal" style="background: rgba(255, 255, 255, 0.15); border-color: rgba(255, 255, 255, 0.4); color: #FFFFFF; margin-bottom: 12px;">商务合作</span>
<h2 class="nhc-cta-title">开启您的企业数字化与智能化升级项目</h2>
<p class="nhc-cta-desc">
资深系统架构师与业务专家团队随时待命,为您提供深度业务剖析、架构建议与原型演示,24 小时内快速响应对接。
</p>

查看文件

@@ -12,11 +12,11 @@
<span>关于我们</span>
</div>
<div style="margin-bottom: 16px;">
<span class="nhc-seal">格物致知 · 自主可控</span>
<span class="nhc-seal">自主可控 · 源码交付</span>
</div>
<h1 class="nhc-page-title">十年潜心研磨 · 铸就自主可控数字基石</h1>
<h1 class="nhc-page-title">十年技术沉淀 · 打造自主可控的软件系统</h1>
<p class="nhc-page-desc">
海纳百川,有容乃大;壁立千仞,无欲则刚。贵阳纳海川科技有限公司立足西南数谷、服务全国,专注于企业级数字化技术中台建设、全场景移动端/小程序生态定制及垂直领域 AI 智能体应用研发。
贵阳纳海川科技有限公司立足西南、服务全国,专注于企业级数字化中台定制、全场景移动应用与小程序定制、私有化 AI 智能体应用及成熟商业软件研发。坚持 100% 完整源码交付与严格测试驱动开发,为政企和商业客户交付自主可控的软件资产。
</p>
</div>
</section>
@@ -26,43 +26,43 @@
<div class="nhc-container">
<div class="nhc-section-header">
<div class="nhc-section-tag">
<span class="nhc-seal">东方工程哲学</span>
<span class="nhc-tag-text">ENGINEERING PHILOSOPHY</span>
<span class="nhc-seal">技术立身</span>
<span class="nhc-tag-text">ENGINEERING VALUES</span>
</div>
<h2 class="nhc-section-title">技为本 · 匠于心 · 海纳百川</h2>
<h2 class="nhc-section-title">坚持扎实工程落地 · 交付自主可控的高可用软件资产</h2>
<p class="nhc-section-desc">
我们摒弃泛泛空谈与概念堆砌,坚守经得起白盒审查的扎实工程准则,以确定性代码交付商业价值。
纳海川坚持实事求是的研发态度,以白盒自主可控、严苛质量标准与深厚业务沉淀,为客户交付经得起考验的数字化系统。
</p>
<div class="nhc-line-divider"><span></span></div>
</div>
<!-- 三大工程准则 -->
<!-- 三大研发原则 -->
<div class="nhc-about-pillars-grid">
<div class="nhc-about-pillar-card nhc-corner-card">
<div class="nhc-pillar-icon-box">
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M12 2L2 7l10 5 10-5-10-5zM2 17l10 5 10-5M2 12l10 5 10-5"/></svg>
</div>
<h3 class="nhc-pillar-title">格物求真 · 拒绝套壳虚浮</h3>
<h3 class="nhc-pillar-title">自主可控研发 · 杜绝低质套壳代码</h3>
<p class="nhc-pillar-text">
每一行核心逻辑均源自自主工程设计,拒绝低质套壳代码。系统架构遵循清晰的分层规范与白盒自研标准,确保底层代码安全可控、无暗门。
核心业务逻辑均遵循清晰分层规范自主编写,不使用无技术支持与源码保障的第三方黑盒套壳。提供完整源代码白盒交付,支持客户进行安全代码审计,自主可控无后顾之忧。
</p>
</div>
<div class="nhc-about-pillar-card nhc-corner-card">
<div class="nhc-pillar-icon-box">
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16z"/></svg>
</div>
<h3 class="nhc-pillar-title">包容开放 · 兼容异构生态</h3>
<h3 class="nhc-pillar-title">标准化开放架构 · 无缝对接企业现有系统</h3>
<p class="nhc-pillar-text">
秉承“海纳百川”的包容架构设计,系统具备标准的 RESTful / RPC 协议插槽,轻松无缝打通企业原有的财务 ERP、仓储 WMS、第三方支付等系统。
系统采用模块化与微服务设计,具备标准的 RESTful 与 RPC 接口规范。可轻松与企业既有的金蝶、用友、各类 WMS 仓储及第三方物流、支付系统互通,保护企业既有 IT 投资。
</p>
</div>
<div class="nhc-about-pillar-card nhc-corner-card">
<div class="nhc-pillar-icon-box">
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M22 11.08V12a10 10 0 1 1-5.93-9.14"/><polyline points="22 4 12 14.01 9 11.01"/></svg>
</div>
<h3 class="nhc-pillar-title">慎终如始 · 严苛敏捷交付</h3>
<h3 class="nhc-pillar-title">严格测试驱动开发 · 杜绝系统带病上线</h3>
<p class="nhc-pillar-text">
全流程贯彻 TDD 测试驱动开发与 CI/CD 自动化持续集成,全链路单元测试与自动化回归校验,杜绝带病上线,确保交付即具备工业级高可用性。
研发全流程贯彻 TDD 测试驱动与持续集成自动化测试,交付成果包含全套自动化单元测试用例与接口回归集合,严把系统质量与性能关口,确保生产环境稳定运行。
</p>
</div>
</div>

查看文件

@@ -7,48 +7,48 @@
<!-- 1. 移动端 Hero 视窗 -->
<div style="background: #FFFFFF; padding: 28px 16px 24px; border-bottom: 1px solid #E2E8F0; text-align: center;">
<div style="margin-bottom: 10px;">
<span class="nhc-seal" style="padding: 2px 10px; font-size: 11px;">格物致知 · 自主可控</span>
<span class="nhc-seal" style="padding: 2px 10px; font-size: 11px;">自主可控 · 源码交付</span>
</div>
<h1 style="font-family: 'Noto Serif SC', 'SimSun', serif; font-size: 20px; font-weight: 700; color: #0F172A; margin: 0 0 10px 0; line-height: 1.4;">
十年潜心研磨 · 铸就数字基石
十年技术沉淀 · 打造自主可控软件系统
</h1>
<p style="font-size: 13px; color: #64748B; margin: 0; line-height: 1.6; text-align: justify;">
海纳百川,有容乃大。贵阳纳海川科技有限公司立足西南数谷、服务全国,专注于企业级数字化技术中台建设、全场景移动端/小程序生态定制及垂直领域 AI 智能体应用研发。
贵阳纳海川科技有限公司立足西南、服务全国,专注于企业级软件定制开发、全场景移动端与小程序定制、私有化 AI 智能体及商业软件研发。坚持 100% 源码交付与测试驱动开发。
</p>
</div>
<!-- 2. 东方工程哲学三大准则 -->
<!-- 2. 研发三大准则 -->
<div style="padding: 20px 16px;">
<div style="text-align: center; margin-bottom: 16px;">
<span class="nhc-seal" style="padding: 2px 8px; font-size: 11px;">工程哲学</span>
<span class="nhc-seal" style="padding: 2px 8px; font-size: 11px;">研发准则</span>
<h2 style="font-family: 'Noto Serif SC', 'SimSun', serif; font-size: 17px; font-weight: 700; color: #0F172A; margin: 6px 0 0;">
技为本 · 匠于心 · 海纳百川
扎实工程落地 · 交付自主可控软件
</h2>
</div>
<div style="display: flex; flex-direction: column; gap: 12px;">
<div style="background: #FFFFFF; border-radius: 6px; border: 1px solid #E2E8F0; padding: 16px; border-left: 3px solid #2563EB;">
<h3 style="font-family: 'Noto Serif SC', serif; font-size: 15px; font-weight: 700; color: #0F172A; margin: 0 0 6px;">
格物求真 · 拒绝套壳虚浮
自主可控研发 · 杜绝低质套壳代码
</h3>
<p style="font-size: 12px; color: #475569; margin: 0; line-height: 1.6;">
每一行核心逻辑均源自自主工程设计,代码白盒可控,无暗门、无冗余拼凑。
每一行核心逻辑均自主编写,提供完整源代码白盒交付,支持客户进行安全代码审计。
</p>
</div>
<div style="background: #FFFFFF; border-radius: 6px; border: 1px solid #E2E8F0; padding: 16px; border-left: 3px solid #06B6D4;">
<h3 style="font-family: 'Noto Serif SC', serif; font-size: 15px; font-weight: 700; color: #0F172A; margin: 0 0 6px;">
包容开放 · 兼容异构生态
标准化开放架构 · 无缝对接企业系统
</h3>
<p style="font-size: 12px; color: #475569; margin: 0; line-height: 1.6;">
具备标准微服务接口插槽,无缝互联企业既有 ERP、WMS 仓储及供应链系统。
具备标准 API 接口规范,无缝对接企业既有 ERP、WMS 仓储及第三方平台。
</p>
</div>
<div style="background: #FFFFFF; border-radius: 6px; border: 1px solid #E2E8F0; padding: 16px; border-left: 3px solid #7C3AED;">
<h3 style="font-family: 'Noto Serif SC', serif; font-size: 15px; font-weight: 700; color: #0F172A; margin: 0 0 6px;">
慎终如始 · 严苛敏捷交付
严格测试驱动开发 · 杜绝系统带病上线
</h3>
<p style="font-size: 12px; color: #475569; margin: 0; line-height: 1.6;">
全流程贯彻 TDD 测试驱动开发与 CI/CD 自动化集成,杜绝带病交付。
全流程贯彻 TDD 测试驱动与持续集成自动化测试,从源头杜绝带病交付。
</p>
</div>
</div>

查看文件

@@ -9,13 +9,13 @@
<span>产品矩阵</span>
</div>
<div style="margin-bottom: 16px;">
<span class="nhc-seal">商业重器</span>
<span class="nhc-seal">成熟产品 · 源码交付</span>
</div>
<h1 class="nhc-page-title">积厚流光成重器 · 矩阵赋能拓坦途</h1>
<h1 class="nhc-page-title">成熟商业软件产品矩阵 · 助力企业全渠道数字化运营</h1>
<p class="nhc-page-desc">
历经千万级真实交易峰值淬炼的标准化工业级成熟商业软件资产,涵盖全场景商城、智能收银、全链路进销存与云原生 SaaS 底座,支持公有云订阅与专有私有化源码买断。
历经真实交易峰值考验的标准化工业级商业软件资产,涵盖全场景商城、智能收银、全链路进销存与云原生 SaaS 底座,支持公有云订阅与专有私有化源码交付。
</p>
<div style="display: flex; justify-content: center; gap: 16px;">
<div style="display: flex; justify-content: flex-start; gap: 16px;">
<a href="#product-matrix" class="nhc-btn nhc-btn-primary nhc-btn-lg">
<span>浏览产品矩阵</span>
<svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M5 12h14M12 5l7 7-7 7"/></svg>
@@ -35,7 +35,7 @@
<span class="nhc-seal">商业矩阵</span>
<span class="nhc-tag-text">STANDARDIZED SOLUTIONS</span>
</div>
<h2 class="nhc-section-title">四大成熟商业产品 · 即开即用的增长引擎</h2>
<h2 class="nhc-section-title">四大成熟商业产品 · 支撑企业全渠道数字化经营</h2>
<p class="nhc-section-desc">
模块化、松耦合的高可用架构设计,既可独立开箱即用,亦可无缝组合成全链路商业数字闭环。
</p>
@@ -295,7 +295,7 @@
<span class="nhc-seal">商业授权</span>
<span class="nhc-tag-text">DEPLOYMENT MODES</span>
</div>
<h2 class="nhc-section-title">两种灵活合作模式 · 赋能长期稳健发展</h2>
<h2 class="nhc-section-title">两种灵活商业授权模式 · 满足不同规模企业需求</h2>
<p class="nhc-section-desc">
根据企业的预算周期、技术团队实力及合规要求,灵活选择公有云敏捷订阅或专有云私有化源码买断。
</p>
@@ -426,7 +426,7 @@
<div class="nhc-cta-inner">
<div class="nhc-cta-content">
<span class="nhc-seal" style="background: rgba(255, 255, 255, 0.15); border-color: rgba(255, 255, 255, 0.4); color: #FFFFFF; margin-bottom: 12px;">商业咨询</span>
<h2 class="nhc-cta-title">准备好用成熟工业级产品矩阵驱动业务跃升了吗?</h2>
<h2 class="nhc-cta-title">选择成熟商业软件体系 · 加速企业数字化转型</h2>
<p class="nhc-cta-desc">
纳海川解决方案专家团队随时待命,为您提供深度业务选型评估、专属架构建议与商务方案,24 小时内快速响应对接。
</p>

查看文件

@@ -9,13 +9,13 @@
<span>核心服务</span>
</div>
<div style="margin-bottom: 16px;">
<span class="nhc-seal">精工匠造</span>
<span class="nhc-seal">自主研发 · 源码交付</span>
</div>
<h1 class="nhc-page-title">经纬立骨铸基石 · 全栈自主赋生产</h1>
<h1 class="nhc-page-title">企业级软件定制开发与工程化落地服务</h1>
<p class="nhc-page-desc">
纳海川聚焦企业级中台定制、全端移动生态与垂直智能体工程,坚持全流程测试驱动开发(TDD)与金融级安全标准,提供 100% 完整源码工程交付与专有私有化部署。
</p>
<div style="display: flex; justify-content: center; gap: 16px;">
<div style="display: flex; justify-content: flex-start; gap: 16px;">
<a href="#services-list" class="nhc-btn nhc-btn-primary nhc-btn-lg">
<span>查阅服务能力</span>
<svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M5 12h14M12 5l7 7-7 7"/></svg>
@@ -316,9 +316,9 @@
<span class="nhc-seal">交付标准</span>
<span class="nhc-tag-text">STANDARD METHODOLOGY</span>
</div>
<h2 class="nhc-section-title">五步严谨工程法 · 全生命周期守护</h2>
<h2 class="nhc-section-title">标准化软件交付流程 · 严格把控每个交付节点</h2>
<p class="nhc-section-desc">
恪守现代中式工匠规矩与敏捷工程规范,每一步都有明确的检验准则与质量验收节点。
遵循企业级软件工程规范与敏捷开发标准,从需求调研到持续运维提供全周期质量把控。
</p>
<div class="nhc-line-divider"><span></span></div>
</div>
@@ -326,37 +326,37 @@
<div class="nhc-process-flow">
<div class="nhc-process-step">
<div class="nhc-process-step-num">01</div>
<h4 class="nhc-process-step-title">需求深度研判</h4>
<h4 class="nhc-process-step-title">业务需求调研与方案论证</h4>
<p class="nhc-process-step-desc">
格物致知。资深架构师与业务专家深入业务一线,全流程梳理业务痛点,产出详尽需求规格蓝图与可行性评估报告。
资深架构师与业务专家深入一线,厘清业务痛点与技术边界,输出详尽需求规格蓝图与可行性评估报告。
</p>
</div>
<div class="nhc-process-step">
<div class="nhc-process-step-num">02</div>
<h4 class="nhc-process-step-title">架构严谨立骨</h4>
<h4 class="nhc-process-step-title">高可用微服务架构设计</h4>
<p class="nhc-process-step-desc">
经纬分明。制定高可用系统拓扑、高安全数据模型、微服务治理及应对极端峰值的应急预案,杜绝后期返工。
系统化规划微服务拓扑、高安全数据模型、分库分表与缓存策略,制定应对极端业务峰值的应急预案。
</p>
</div>
<div class="nhc-process-step">
<div class="nhc-process-step-num">03</div>
<h4 class="nhc-process-step-title">敏捷测试驱动</h4>
<h4 class="nhc-process-step-title">测试驱动开发与敏捷编码</h4>
<p class="nhc-process-step-desc">
精工细琢。严格遵循 TDD 模式与 CI/CD 自动化流水线,代码评审严苛,确保无死锁缺陷,保障高质量源码输出。
严格遵循测试驱动开发(TDD)规范与 CI/CD 自动化流水线,落实代码双人评审,保障高稳定性源码输出。
</p>
</div>
<div class="nhc-process-step">
<div class="nhc-process-step-num">04</div>
<h4 class="nhc-process-step-title">高压安全审计</h4>
<h4 class="nhc-process-step-title">全链路压测与安全渗透测试</h4>
<p class="nhc-process-step-desc">
严审磐石。全路径模拟超负荷并发压力测试,配合权威渗透扫描与等保合规校验,坚固如铁,滴水不漏。
全路径模拟高并发峰值压力测试,配合权威渗透扫描与等保合规校验,保障系统坚固可靠。
</p>
</div>
<div class="nhc-process-step">
<div class="nhc-process-step-num">05</div>
<h4 class="nhc-process-step-title">私有化与维保</h4>
<h4 class="nhc-process-step-title">私有化部署与长期技术运维</h4>
<p class="nhc-process-step-desc">
修己守信。专业工程师现场或专网部署交付,提供完善运维赋能培训与 7×24 持续演进支持,全天候守护平稳运行。
专业工程师提供专有云/内网物理隔离部署,全量交付白盒源码与技术文档,配备专属运维团队与 SLA 响应支持。
</p>
</div>
</div>

查看文件

@@ -378,25 +378,25 @@ img {
/* 轮播图幻灯片不同主题背景与中式意境光影 (浅色高雅、通透水墨微晕) */
.nhc-slide-theme-1 {
background:
linear-gradient(90deg, rgba(255, 255, 255, 0.96) 0%, rgba(255, 255, 255, 0.90) 42%, rgba(255, 255, 255, 0.15) 100%),
linear-gradient(90deg, rgba(255, 255, 255, 0.98) 0%, rgba(255, 255, 255, 0.92) 50%, rgba(255, 255, 255, 0.15) 100%),
url('../images/banners/banner_lead.jpg') right center / cover no-repeat;
}
.nhc-slide-theme-2 {
background:
linear-gradient(90deg, rgba(255, 255, 255, 0.96) 0%, rgba(255, 255, 255, 0.90) 42%, rgba(255, 255, 255, 0.15) 100%),
linear-gradient(90deg, rgba(255, 255, 255, 0.98) 0%, rgba(255, 255, 255, 0.92) 50%, rgba(255, 255, 255, 0.15) 100%),
url('../images/banners/banner_craft.jpg') right center / cover no-repeat;
}
.nhc-slide-theme-3 {
background:
linear-gradient(90deg, rgba(255, 255, 255, 0.96) 0%, rgba(255, 255, 255, 0.90) 42%, rgba(255, 255, 255, 0.15) 100%),
linear-gradient(90deg, rgba(255, 255, 255, 0.98) 0%, rgba(255, 255, 255, 0.92) 50%, rgba(255, 255, 255, 0.15) 100%),
url('../images/banners/banner_agent.jpg') right center / cover no-repeat;
}
.nhc-slide-theme-4 {
background:
linear-gradient(90deg, rgba(255, 255, 255, 0.96) 0%, rgba(255, 255, 255, 0.90) 42%, rgba(255, 255, 255, 0.15) 100%),
linear-gradient(90deg, rgba(255, 255, 255, 0.98) 0%, rgba(255, 255, 255, 0.92) 50%, rgba(255, 255, 255, 0.15) 100%),
url('../images/banners/banner_matrix.jpg') right center / cover no-repeat;
}
@@ -552,9 +552,10 @@ img {
}
.nhc-hero-content {
text-align: center;
max-width: 960px;
margin: 0 auto;
text-align: left;
max-width: 720px;
margin: 0;
padding: 40px 0 20px;
position: relative;
z-index: 2;
}
@@ -562,29 +563,29 @@ img {
.nhc-hero-badge {
display: inline-flex;
align-items: center;
gap: 10px;
background: #FFFFFF;
gap: 8px;
background: rgba(255, 255, 255, 0.95);
border: 1px solid var(--border-color);
padding: 6px 16px;
padding: 4px 12px;
border-radius: var(--radius-sm);
margin-bottom: 24px;
margin-bottom: 20px;
box-shadow: var(--shadow-subtle);
}
.nhc-hero-badge-text {
font-size: 13px;
font-size: 12px;
color: var(--text-secondary);
font-weight: 500;
}
.nhc-hero-title {
font-family: var(--font-serif);
font-size: 52px;
font-size: 42px;
font-weight: 700;
color: var(--text-primary);
line-height: 1.25;
letter-spacing: 2px;
margin-bottom: 24px;
line-height: 1.32;
letter-spacing: -0.5px;
margin-bottom: 20px;
}
.nhc-hero-title span.highlight {
@@ -594,37 +595,63 @@ img {
}
.nhc-hero-subtitle {
font-size: 18px;
font-size: 15px;
color: var(--text-secondary);
line-height: 1.8;
max-width: 780px;
margin: 0 auto 36px;
line-height: 1.75;
max-width: 660px;
margin: 0 0 32px;
}
.nhc-hero-cta {
display: flex;
align-items: center;
justify-content: center;
justify-content: flex-start;
gap: 16px;
margin-bottom: 64px;
margin-bottom: 40px;
}
.nhc-hero-metrics {
display: grid;
grid-template-columns: repeat(4, 1fr);
gap: 24px;
background: #FFFFFF;
gap: 16px;
background: rgba(255, 255, 255, 0.92);
backdrop-filter: blur(12px);
-webkit-backdrop-filter: blur(12px);
border: 1px solid var(--border-color);
border-radius: var(--radius-md);
padding: 28px 24px;
border-radius: var(--radius-sm);
padding: 18px 20px;
box-shadow: var(--shadow-subtle);
max-width: 680px;
margin: 0;
}
.nhc-metric-item {
text-align: center;
text-align: left;
position: relative;
}
.nhc-metric-val {
font-family: var(--font-serif);
font-size: 24px;
font-weight: 700;
color: var(--primary);
line-height: 1.2;
}
.nhc-metric-val sub {
font-size: 13px;
font-weight: 600;
margin-left: 2px;
bottom: 0;
}
.nhc-metric-label {
font-size: 11px;
color: var(--text-muted);
margin-top: 4px;
line-height: 1.4;
}
.nhc-metric-item:not(:last-child)::after {
content: "";
position: absolute;
@@ -1534,11 +1561,11 @@ img {
position: relative;
padding: 130px 0 70px;
background:
radial-gradient(circle at 50% 15%, rgba(37, 99, 235, 0.07) 0%, transparent 55%),
radial-gradient(circle at 85% 60%, rgba(6, 182, 212, 0.05) 0%, transparent 45%),
radial-gradient(circle at 15% 35%, rgba(37, 99, 235, 0.05) 0%, transparent 50%),
radial-gradient(circle at 85% 60%, rgba(6, 182, 212, 0.04) 0%, transparent 45%),
linear-gradient(180deg, #FFFFFF 0%, #F8FAFC 100%);
border-bottom: 1px solid var(--border-color);
text-align: center;
text-align: left;
}
.nhc-breadcrumb {
@@ -1561,19 +1588,22 @@ img {
.nhc-page-title {
font-family: var(--font-serif);
font-size: 44px;
font-size: 38px;
font-weight: 700;
color: var(--text-primary);
letter-spacing: 1.5px;
letter-spacing: -0.5px;
line-height: 1.35;
margin-bottom: 18px;
text-align: left;
}
.nhc-page-desc {
max-width: 760px;
margin: 0 auto 30px;
font-size: 17px;
margin: 0 0 28px;
font-size: 16px;
color: var(--text-secondary);
line-height: 1.8;
text-align: left;
}
/* 服务三大领域深度卡片 (交替错落或大横幅) */

查看文件

@@ -7,8 +7,11 @@
import os
import re
import sys
import unittest
BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
if BASE_DIR not in sys.path:
sys.path.insert(0, BASE_DIR)
class TestResult:
def __init__(self, name):
@@ -213,14 +216,25 @@ def test_contact_page():
return res.summary()
def test_no_ai_flavor_suite():
res = TestResult("去AI味专项测试 (NoAiFlavor)")
from tests.test_no_ai_flavor import TestNoAiFlavor
suite = unittest.TestLoader().loadTestsFromTestCase(TestNoAiFlavor)
runner = unittest.TextTestRunner(verbosity=0)
test_result = runner.run(suite)
res.assert_true(test_result.wasSuccessful(), f"去AI味全量断言通过 (共 {test_result.testsRun} 项)")
return res.summary()
def main():
import unittest
results = [
test_cases_page(),
test_services_page(),
test_products_page(),
test_nav_megamenu(),
test_about_page(),
test_contact_page()
test_contact_page(),
test_no_ai_flavor_suite()
]
sys.exit(0 if all(results) else 1)

122
tests/test_no_ai_flavor.py 普通文件
查看文件

@@ -0,0 +1,122 @@
# -*- coding: utf-8 -*-
"""
去 AI 味(文案与排版)专项自动化测试用例
严格遵循 TDD 模式:验证全站文本杜绝 AI 假大空对仗口号,排版具备大厂专业左对齐与严谨网格。
"""
import os
import re
import unittest
ROOT_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
class TestNoAiFlavor(unittest.TestCase):
def setUp(self):
self.index_html_path = os.path.join(ROOT_DIR, 'addons/official/view/web/official_home/index.html')
self.service_page_path = os.path.join(ROOT_DIR, 'addons/official/view/web/official_product/service_page.html')
self.product_page_path = os.path.join(ROOT_DIR, 'addons/official/view/web/official_product/product_page.html')
self.cases_page_path = os.path.join(ROOT_DIR, 'addons/official/view/web/official_case_show/list.html')
self.about_page_path = os.path.join(ROOT_DIR, 'addons/official/view/web/official_home/single.html')
self.about_mobile_path = os.path.join(ROOT_DIR, 'addons/official/view/web/official_home/single_e.html')
self.contact_page_path = os.path.join(ROOT_DIR, 'addons/official/view/web/official_online_message/list.html')
self.css_path = os.path.join(ROOT_DIR, 'public/assets/addons/official/css/modern_nhc.css')
with open(self.index_html_path, 'r', encoding='utf-8') as f:
self.index_html = f.read()
with open(self.service_page_path, 'r', encoding='utf-8') as f:
self.service_page = f.read()
with open(self.product_page_path, 'r', encoding='utf-8') as f:
self.product_page = f.read()
with open(self.cases_page_path, 'r', encoding='utf-8') as f:
self.cases_page = f.read()
with open(self.about_page_path, 'r', encoding='utf-8') as f:
self.about_page = f.read()
with open(self.about_mobile_path, 'r', encoding='utf-8') as f:
self.about_mobile = f.read()
with open(self.contact_page_path, 'r', encoding='utf-8') as f:
self.contact_page = f.read()
with open(self.css_path, 'r', encoding='utf-8') as f:
self.css = f.read()
def test_forbidden_ai_buzzwords_in_index(self):
"""首页必须彻底杜绝 AI 假大空对仗套话"""
forbidden_words = [
'铸造数字生产力',
'格物致知',
'经纬分明',
'架构严谨立骨',
'严审磐石',
'笃行护航',
'成巨流',
'海纳百川以成巨流',
'聚智能以启新元'
]
for word in forbidden_words:
self.assertNotIn(word, self.index_html, f"首页 index.html 仍包含 AI 味词汇: '{word}'")
def test_forbidden_ai_buzzwords_in_services(self):
"""服务页必须杜绝 AI 假大空标题与步骤套话"""
forbidden_words = [
'经纬立骨铸基石',
'全栈自主赋生产',
'格物致知',
'架构严谨立骨',
'严审磐石',
'修己守信',
]
for word in forbidden_words:
self.assertNotIn(word, self.service_page, f"服务页 service_page.html 仍包含 AI 味词汇: '{word}'")
def test_forbidden_ai_buzzwords_in_products(self):
"""产品页必须杜绝 AI 假大空口号"""
forbidden_words = [
'积厚流光成重器',
'矩阵赋能拓坦途',
]
for word in forbidden_words:
self.assertNotIn(word, self.product_page, f"产品页 product_page.html 仍包含 AI 味词汇: '{word}'")
def test_forbidden_ai_buzzwords_in_about(self):
"""关于我们(PC与移动端)必须杜绝空洞口号"""
forbidden_words = [
'海纳百川,有容乃大;壁立千仞,无欲则刚',
'格物致知 · 自主可控',
'格物求真',
'慎终如始',
]
for word in forbidden_words:
self.assertNotIn(word, self.about_page, f"关于我们 PC 页仍包含 AI 味词汇: '{word}'")
self.assertNotIn(word, self.about_mobile, f"关于我们移动端页仍包含 AI 味词汇: '{word}'")
def test_enterprise_engineering_keywords(self):
"""全站必须具备真实大厂软件工程与业务术语"""
required_in_index = ['源码交付', '微服务', '私有化部署', '测试驱动']
for kw in required_in_index:
self.assertIn(kw, self.index_html, f"首页缺少硬核工程关键词: '{kw}'")
required_in_services = ['源码', '微服务', 'API', 'SLA', '私有化']
for kw in required_in_services:
self.assertIn(kw, self.service_page, f"服务页缺少硬核工程关键词: '{kw}'")
def test_layout_enterprise_left_aligned_hero(self):
"""首屏与二级页排版验证:左对齐大厂排版与严谨留白"""
self.assertIn('text-align: left;', self.css, "CSS 中应包含 text-align: left")
# 确保 hero-content 是左对齐
hero_content_match = re.search(r'(?:\r?\n)\.nhc-hero-content\s*\{([^}]+)\}', self.css)
self.assertTrue(hero_content_match, "必须包含 .nhc-hero-content 样式块")
self.assertIn('text-align: left', hero_content_match.group(1))
# 确保二级页面 Hero 支持左对齐大厂风
page_hero_match = re.search(r'\.nhc-page-hero\s*\{([^}]+)\}', self.css)
self.assertTrue(page_hero_match, "必须包含 .nhc-page-hero 样式块")
self.assertIn('text-align: left', page_hero_match.group(1), "二级页 Hero 推荐大厂左对齐排版")
def test_typography_and_color_tokens(self):
"""规范中的设计令牌:纯净背景、科技蓝主色、严禁霓虹炫目"""
self.assertIn('--primary: #2563EB;', self.css)
self.assertIn('--bg-primary: #FFFFFF;', self.css)
self.assertIn('--bg-secondary: #F8FAFC;', self.css)
self.assertIn('--text-primary: #0F172A;', self.css)
if __name__ == '__main__':
unittest.main()