427 lines
24 KiB
HTML
427 lines
24 KiB
HTML
<!DOCTYPE html>
|
|
<html lang="zh-CN">
|
|
<head>
|
|
<meta charset="UTF-8" />
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0"/>
|
|
<title>产品详情 - 隼瞻科技</title>
|
|
|
|
<!-- Tailwind (kept, may be used for layout utilities) -->
|
|
<script src="https://cdn.tailwindcss.com"></script>
|
|
|
|
<!-- Font Awesome & Font -->
|
|
<link href="https://cdn.jsdelivr.net/npm/font-awesome@4.7.0/css/font-awesome.min.css" rel="stylesheet">
|
|
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap" rel="stylesheet">
|
|
|
|
<!-- Main styles (changed to text/css so WordPress won't ignore it) -->
|
|
<style type="text/css">
|
|
/* Colour system used in this component - scoped under #sj-product-page to avoid collisions with WP theme CSS */
|
|
#sj-product-page {
|
|
--primary: #3b82f6;
|
|
--secondary: #2563eb;
|
|
--accent: #60a5fa;
|
|
--dark: #111827;
|
|
--darker: #0b1220; /* slightly darker than original to ensure contrast */
|
|
--light: #f8fafc;
|
|
--bg-dark: #1f2937;
|
|
--bg-darker: #111827;
|
|
font-family: "Inter", sans-serif;
|
|
background-color: var(--darker) !important;
|
|
color: #e5e7eb !important;
|
|
}
|
|
|
|
/* Force colours for commonly used utility-like classes INSIDE our scope so WP theme CSS won't override */
|
|
#sj-product-page .bg-bg-darker { background-color: var(--bg-darker) !important; }
|
|
#sj-product-page .bg-bg-dark { background-color: var(--bg-dark) !important; }
|
|
#sj-product-page .bg-darker { background-color: var(--bg-darker) !important; }
|
|
#sj-product-page .bg-dark { background-color: var(--bg-dark) !important; }
|
|
|
|
#sj-product-page .bg-primary { background-color: var(--primary) !important; }
|
|
#sj-product-page .text-primary { color: var(--primary) !important; }
|
|
#sj-product-page .text-secondary { color: var(--secondary) !important; }
|
|
#sj-product-page .text-white { color: #ffffff !important; }
|
|
|
|
/* Replacements for Tailwind-like fractional opacity classes that use "/" (which can be tricky in CSS selectors).
|
|
In the markup we use bg-primary-20 and bg-primary-10, map them here. */
|
|
#sj-product-page .bg-primary-20 { background-color: rgba(59,130,246,0.20) !important; }
|
|
#sj-product-page .bg-primary-10 { background-color: rgba(59,130,246,0.10) !important; }
|
|
|
|
/* Text greys used in the content */
|
|
#sj-product-page .text-gray-100 { color: #f3f4f6 !important; }
|
|
#sj-product-page .text-gray-300 { color: #d1d5db !important; }
|
|
#sj-product-page .text-gray-400 { color: #9ca3af !important; }
|
|
|
|
/* Card and element overrides so WP theme won't change them unexpectedly */
|
|
#sj-product-page .rounded-xl { border-radius: 0.75rem !important; }
|
|
#sj-product-page .rounded-2xl { border-radius: 1rem !important; }
|
|
#sj-product-page .shadow-md { box-shadow: 0 6px 18px rgba(2,6,23,0.6) !important; }
|
|
#sj-product-page .shadow-lg { box-shadow: 0 10px 30px rgba(2,6,23,0.7) !important; }
|
|
|
|
/* Utility-ish things used in the layout */
|
|
#sj-product-page .container { max-width: 1200px; margin-left: auto; margin-right: auto; padding-left: 1rem; padding-right: 1rem; }
|
|
@media (min-width: 768px) { #sj-product-page .container { padding-left: 1.5rem; padding-right: 1.5rem; } }
|
|
@media (min-width: 1024px) { #sj-product-page .container { padding-left: 2rem; padding-right: 2rem; } }
|
|
|
|
/* Grid safe defaults inside scope */
|
|
#sj-product-page .grid { display: grid; gap: 1.5rem; }
|
|
@media (min-width: 768px) {
|
|
#sj-product-page .md\\:grid-cols-2 { grid-template-columns: repeat(2, minmax(0,1fr)); }
|
|
#sj-product-page .md\\:grid-cols-3 { grid-template-columns: repeat(3, minmax(0,1fr)); }
|
|
#sj-product-page .md\\:grid-cols-4 { grid-template-columns: repeat(4, minmax(0,1fr)); }
|
|
#sj-product-page .md\\:grid-cols-6 { grid-template-columns: repeat(6, minmax(0,1fr)); }
|
|
}
|
|
@media (min-width: 1024px) {
|
|
#sj-product-page .lg\\:grid-cols-3 { grid-template-columns: repeat(3, minmax(0,1fr)); }
|
|
#sj-product-page .lg\\:grid-cols-2 { grid-template-columns: repeat(2, minmax(0,1fr)); }
|
|
}
|
|
|
|
/* Visual helpers included originally */
|
|
#sj-product-page .text-shadow { text-shadow: 0 2px 4px rgba(0,0,0,0.1); }
|
|
#sj-product-page .product-feature-card { transition: all 0.3s ease; }
|
|
#sj-product-page .product-feature-card:hover { transform: translateY(-5px); }
|
|
#sj-product-page .section-active { color: var(--secondary) !important; border-bottom: 2px solid var(--secondary) !important; }
|
|
|
|
/* Scroll animation - same as original but scoped */
|
|
#sj-product-page .animate-fade-in {
|
|
opacity: 0;
|
|
transform: translateY(20px);
|
|
transition: opacity 0.6s ease-out, transform 0.6s ease-out;
|
|
}
|
|
#sj-product-page .animate-fade-in.visible {
|
|
opacity: 1;
|
|
transform: translateY(0);
|
|
}
|
|
|
|
/* ripple and hover effects (scoped) */
|
|
#sj-product-page .hover-float { transition: transform 0.3s ease, box-shadow 0.3s ease; }
|
|
#sj-product-page .hover-float:hover { transform: translateY(-5px); }
|
|
|
|
/* background grid graphic - keep scoped to avoid global overrides */
|
|
#sj-product-page .bg-grid {
|
|
background-image: url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%239C92AC' fill-opacity='0.05'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E") !important;
|
|
}
|
|
|
|
/* gradient animation (scoped) */
|
|
@keyframes gradientFlow {
|
|
0% { background-position: 0% 50%; }
|
|
50% { background-position: 100% 50%; }
|
|
100% { background-position: 0% 50%; }
|
|
}
|
|
#sj-product-page .gradient-animate {
|
|
background-size: 200% 200% !important;
|
|
animation: gradientFlow 15s ease infinite !important;
|
|
}
|
|
|
|
/* subtle pulse */
|
|
@keyframes pulseSlow {
|
|
0%,100% { transform: scale(1); }
|
|
50% { transform: scale(1.05); }
|
|
}
|
|
#sj-product-page .animate-pulse-slow { animation: pulseSlow 3s ease-in-out infinite !important; }
|
|
|
|
/* Ensure links inside the scope have our primary colour by default */
|
|
#sj-product-page a { color: var(--primary) !important; text-decoration: none !important; }
|
|
#sj-product-page a:hover { color: var(--secondary) !important; }
|
|
|
|
/* Ensure images maintain high contrast against dark background */
|
|
#sj-product-page img { display: block; max-width: 100%; height: auto; }
|
|
|
|
/* Minor typography adjustments inside scope to avoid theme overrides */
|
|
#sj-product-page h1, #sj-product-page h2, #sj-product-page h3, #sj-product-page h4 {
|
|
color: #ffffff !important;
|
|
}
|
|
|
|
/* Make sure borders used in cards are visible on dark backgrounds */
|
|
#sj-product-page .border { border-color: rgba(255,255,255,0.06) !important; }
|
|
#sj-product-page .border-gray-700 { border-color: rgba(148,163,184,0.12) !important; }
|
|
</style>
|
|
|
|
<!-- Legacy utility styles (converted from original tailwind-layer rules) - kept scoped and with text/css -->
|
|
<style type="text/css">
|
|
/* small subset of custom utilities used by this page, scoped */
|
|
#sj-product-page .content-auto { content-visibility: auto; }
|
|
#sj-product-page .text-gradient { background-clip: text; -webkit-background-clip: text; color: transparent; }
|
|
#sj-product-page .product-feature-card { transition: all 0.3s ease; }
|
|
#sj-product-page .section-active { color: var(--secondary) !important; border-bottom: 2px solid var(--secondary) !important; }
|
|
#sj-product-page .count-up { transition: all 0.8s ease-out; }
|
|
#sj-product-page .ripple { position: relative; overflow: hidden; }
|
|
#sj-product-page .ripple:after {
|
|
content: "";
|
|
display: block;
|
|
position: absolute;
|
|
width: 100%;
|
|
height: 100%;
|
|
top: 0; left: 0;
|
|
pointer-events: none;
|
|
background-image: radial-gradient(circle, #fff 10%, transparent 10.01%);
|
|
background-repeat: no-repeat;
|
|
background-position: 50%;
|
|
transform: scale(10, 10);
|
|
opacity: 0;
|
|
transition: transform 0.5s, opacity 0.8s;
|
|
}
|
|
#sj-product-page .ripple:active:after { transform: scale(0,0); opacity: 0.3; transition: 0s; }
|
|
</style>
|
|
</head>
|
|
<body>
|
|
<!-- Wrapper with an ID so we can scope styles and avoid WP theme interference -->
|
|
<div id="sj-product-page" class="min-h-screen">
|
|
|
|
<!-- 产品页面头部 -->
|
|
<section class="pt-24 md:pt-32 pb-16 md:pb-24 bg-gradient-to-br gradient-animate" style="background: linear-gradient(135deg, rgba(31,41,55,0.95), rgba(11,18,32,1)); overflow:hidden;">
|
|
<div class="container mx-auto px-4 md:px-6 lg:px-8">
|
|
<div class="max-w-4xl mx-auto text-center">
|
|
<h1 class="text-[clamp(2rem,5vw,3.5rem)] font-bold text-white leading-tight text-shadow mb-6">
|
|
FPGA开发板
|
|
</h1>
|
|
<div class="bg-primary-20 inline-block px-6 pt-4 rounded-full mb-6 animate-fade-in">
|
|
<h2 class="text-xl font-semibold text-primary">Wing-FPGA-XCKU5P-EVB开发板</h2>
|
|
</div>
|
|
|
|
<!-- 产品图片 - 可替换为实际产品图片 -->
|
|
<div class="mb-8 max-w-2xl mx-auto animate-fade-in">
|
|
<div class="bg-bg-darker p-4 rounded-xl shadow-lg">
|
|
<img src="https://www.beiyuxing.live/wp-content/uploads/2025/11/whiteboard_exported_image-21-1.png" alt="Wing-M130处理器IP" class="w-full h-auto rounded-lg max-h-64 object-contain mx-auto">
|
|
<!-- 提示:请将上方src属性中的"your_product_image.png"替换为实际产品图片的路径 -->
|
|
</div>
|
|
</div>
|
|
|
|
<p class="text-lg md:text-xl text-gray-300 mb-8 max-w-2xl mx-auto" style="line-height:1.6;">
|
|
Wing-FPGA-XCKU5P-EVB是基于Xilinx Ultrascale+ FPGA家族的FPGA开发板,适用于隼瞻各系列内核的评估。
|
|
</p>
|
|
<div class="w-24 h-1 bg-primary mx-auto" style="background-color:var(--primary); height:4px;"></div>
|
|
</div>
|
|
</div>
|
|
</section>
|
|
|
|
<!-- 1. 应用场景 -->
|
|
<section id="applications" class="section-content py-16 bg-bg-dark" style="background-color:var(--bg-dark);">
|
|
<div class="container mx-auto px-4 md:px-6 lg:px-8">
|
|
<div class="max-w-4xl mx-auto mb-16">
|
|
<h2 class="text-3xl md:text-4xl font-bold mb-6 text-white text-center">应用场景</h2>
|
|
<p class="text-gray-300 mb-6 text-center">
|
|
Wing-M130处理器IP凭借其高性能、低功耗特性,广泛应用于以下领域
|
|
</p>
|
|
<div class="w-24 h-1 bg-primary mx-auto mb-12" style="background-color:var(--primary); height:4px;"></div>
|
|
</div>
|
|
|
|
<!-- 应用场景标签 -->
|
|
<div class="flex flex-wrap justify-center gap-4 max-w-3xl mx-auto mb-16">
|
|
<span class="bg-primary-20 text-primary px-6 py-3 rounded-full text-lg font-medium animate-fade-in flex items-center gap-2">
|
|
<i class="fa fa-industry"></i> 工业控制
|
|
</span>
|
|
<span class="bg-primary-20 text-primary px-6 py-3 rounded-full text-lg font-medium animate-fade-in flex items-center gap-2" style="transition-delay: 0.1s">
|
|
<i class="fa fa-connectdevelop"></i> 物联网
|
|
</span>
|
|
</div>
|
|
|
|
<!-- 详细应用场景描述 -->
|
|
<div class="grid grid-cols-1 md:grid-cols-2 gap-8 max-w-5xl mx-auto">
|
|
<div class="bg-bg-darker p-6 rounded-xl shadow-md animate-fade-in">
|
|
<div class="flex items-start mb-4">
|
|
<div class="w-12 h-12 bg-primary-10 rounded-full flex items-center justify-center mr-4">
|
|
<i class="fa fa-tachometer text-primary text-xl"></i>
|
|
</div>
|
|
<div>
|
|
<h4 class="text-xl font-bold mb-2 text-white">性能展示</h4>
|
|
<p class="text-gray-300">
|
|
通过多种基准测试,评估wing-A内核在不同工作负载下的计算性能和吞吐量。
|
|
</p>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="bg-bg-darker p-6 rounded-xl shadow-md animate-fade-in" style="transition-delay: 0.1s">
|
|
<div class="flex items-start mb-4">
|
|
<div class="w-12 h-12 bg-primary-10 rounded-full flex items-center justify-center mr-4">
|
|
<i class="fa fa-microchip text-primary text-xl"></i>
|
|
</div>
|
|
<div>
|
|
<h4 class="text-xl font-bold mb-2 text-white">内核评估</h4>
|
|
<p class="text-gray-300">
|
|
评估FPGA逻辑单元、存储器和DSP资源的使用情况,优化内核设计。
|
|
</p>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</section>
|
|
|
|
<!-- 2. 技术亮点 -->
|
|
<section id="features" class="section-content py-16 bg-bg-dark" style="background-color:var(--bg-dark);">
|
|
<div class="container mx-auto px-4 md:px-6 lg:px-8">
|
|
<div class="max-w-4xl mx-auto mb-16">
|
|
<h2 class="text-3xl md:text-4xl font-bold mb-6 text-white text-center">技术亮点</h2>
|
|
<div class="w-24 h-1 bg-primary mx-auto mb-12" style="background-color:var(--primary); height:4px;"></div>
|
|
</div>
|
|
|
|
<div class="space-y-6 max-w-4xl mx-auto">
|
|
<div class="bg-bg-darker p-6 rounded-xl shadow-md animate-fade-in">
|
|
<div class="flex items-start">
|
|
<div class="mt-1 bg-primary-10 p-2 rounded-lg">
|
|
<i class="fa fa-check text-primary"></i>
|
|
</div>
|
|
<div class="ml-4">
|
|
<h4 class="text-xl font-bold mb-2 text-white mt-3">丰富的片内资源,可支持wing-A系列内核运行Linux</h4>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="bg-bg-darker p-6 rounded-xl shadow-md animate-fade-in" style="transition-delay: 0.1s">
|
|
<div class="flex items-start">
|
|
<div class="mt-1 bg-primary-10 p-2 rounded-lg">
|
|
<i class="fa fa-check text-primary"></i>
|
|
</div>
|
|
<div class="ml-4">
|
|
<h4 class="text-xl font-bold mb-2 text-white mt-3">丰富的外设资源,可适应各种评估场景</h4>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="bg-bg-darker p-6 rounded-xl shadow-md animate-fade-in" style="transition-delay: 0.2s">
|
|
<div class="flex items-start">
|
|
<div class="mt-1 bg-primary-10 p-2 rounded-lg">
|
|
<i class="fa fa-check text-primary"></i>
|
|
</div>
|
|
<div class="ml-4">
|
|
<h4 class="text-xl font-bold mb-2 text-white mt-3">紧凑,小巧的外观</h4>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</section>
|
|
|
|
<!-- 1. 产品参数 -->
|
|
<section id="specifications" class="section-content py-16 bg-bg-dark" style="background-color:var(--bg-dark);">
|
|
<div class="container mx-auto px-4 md:px-6 lg:px-8">
|
|
<div class="max-w-4xl mx-auto mb-16">
|
|
<h2 class="text-3xl md:text-4xl font-bold mb-6 text-white text-center">产品参数</h2>
|
|
<p class="text-gray-300 mb-6 text-center">
|
|
Wing-M050 Processor IP的详细技术参数,为您提供全面的产品信息
|
|
</p>
|
|
<div class="w-24 h-1 bg-primary mx-auto mb-12" style="background-color:var(--primary); height:4px;"></div>
|
|
</div>
|
|
|
|
<div class="bg-bg-darker rounded-xl shadow-md p-8 animate-fade-in">
|
|
<div class="grid md:grid-cols-3 gap-6">
|
|
<div class="space-y-4">
|
|
<div class="flex justify-between pb-3 border-b border-gray-100">
|
|
<span class="text-gray-400">FPGA</span>
|
|
<span class="font-medium text-white">Xilinx XCKU5P</span>
|
|
</div>
|
|
<div class="flex justify-between pb-3 border-b border-gray-100">
|
|
<span class="text-gray-400">UART</span>
|
|
<span class="font-medium text-white">Yes</span>
|
|
</div>
|
|
<div class="flex justify-between pb-3 border-b border-gray-100">
|
|
<span class="text-gray-400">SD/MMC</span>
|
|
<span class="font-medium text-white">Yes</span>
|
|
</div>
|
|
<div class="flex justify-between pb-3 border-b border-gray-100">
|
|
<span class="text-gray-400">Key</span>
|
|
<span class="font-medium text-white">4</span>
|
|
</div>
|
|
<div class="flex justify-between">
|
|
<span class="text-gray-400">LED</span>
|
|
<span class="font-medium text-white">2</span>
|
|
</div>
|
|
</div>
|
|
<div class="space-y-4">
|
|
<div class="flex justify-between pb-3 border-b border-gray-100">
|
|
<span class="text-gray-400">Switch</span>
|
|
<span class="font-medium text-white">4</span>
|
|
</div>
|
|
<div class="flex justify-between pb-3 border-b border-gray-100">
|
|
<span class="text-gray-400">HDMI</span>
|
|
<span class="font-medium text-white">Yes, HDMI 1.4</span>
|
|
</div>
|
|
<div class="flex justify-between pb-3 border-b border-gray-100">
|
|
<span class="text-gray-400">Ethernet</span>
|
|
<span class="font-medium text-white">Yes, 1Gb ethernet</span>
|
|
</div>
|
|
<div class="flex justify-between pb-3 border-b border-gray-100">
|
|
<span class="text-gray-400">USB</span>
|
|
<span class="font-medium text-white">Yes, Host or Slave</span>
|
|
</div>
|
|
<div class="flex justify-between">
|
|
<span class="text-gray-400">DDR</span>
|
|
<span class="font-medium text-white">Yes, DDR4 2GB</span>
|
|
</div>
|
|
</div>
|
|
<div class="space-y-4">
|
|
<div class="flex justify-between pb-3 border-b border-gray-100">
|
|
<span class="text-gray-400">HyperRAM</span>
|
|
<span class="font-medium text-white">Yes, 32MB</span>
|
|
</div>
|
|
<div class="flex justify-between pb-3 border-b border-gray-100">
|
|
<span class="text-gray-400">QSPI Flash</span>
|
|
<span class="font-medium text-white">Yes</span>
|
|
</div>
|
|
<div class="flex justify-between pb-3 border-b border-gray-100">
|
|
<span class="text-gray-400">LCD</span>
|
|
<span class="font-medium text-white">Yes, 800x480 with touch</span>
|
|
</div>
|
|
<div class="flex justify-between pb-3 border-b border-gray-100">
|
|
<span class="text-gray-400">Audio</span>
|
|
<span class="font-medium text-white">Yes, I2S codec</span>
|
|
</div>
|
|
<div class="flex justify-between">
|
|
<span class="text-gray-400">PMOD</span>
|
|
<span class="font-medium text-white">Yes, 2x 3.3V, 1x 1.8V</span>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</section>
|
|
|
|
<section class="py-16 bg-gradient-to-br from-darkBg to-darkerBg overflow-hidden">
|
|
<div class="container mx-auto px-4 md:px-6 lg:px-8">
|
|
<div class="max-w-3xl mx-auto text-center">
|
|
<h2 class="text-3xl md:text-4xl font-bold mb-6 text-white">开启FPGA创新之旅</h2>
|
|
<p class="text-xl text-gray-300 mb-10">
|
|
无论您是进行原型验证、产品开发还是寻求高性能计算解决方案,FPGA都能为您的项目提供灵活、高效的硬件支持。
|
|
</p>
|
|
</div>
|
|
</div>
|
|
</section>
|
|
</div> <!-- end #sj-product-page -->
|
|
|
|
<!-- 咨询按钮 -->
|
|
<div class="fixed bottom-12 right-12 z-50 popupbox">
|
|
<button id="consult-button" class="bg-primary hover:bg-primary/90 text-white py-5 px-8 rounded-full shadow-xl transform transition-all duration-300 hover:scale-110 flex items-center gap-3 text-lg">
|
|
<i class="fa fa-comments-o text-2xl"></i>
|
|
<span class="font-bold">立刻咨询</span>
|
|
</button>
|
|
</div>
|
|
|
|
<!-- JavaScript - 仅保留滚动动画,移除标签页切换功能 -->
|
|
<script>
|
|
// 滚动动画 - scoped to the animate-fade-in elements inside #sj-product-page
|
|
document.addEventListener('DOMContentLoaded', function() {
|
|
const root = document.getElementById('sj-product-page');
|
|
if (!root) return;
|
|
|
|
const animateElements = root.querySelectorAll('.animate-fade-in');
|
|
|
|
function checkScroll() {
|
|
animateElements.forEach(element => {
|
|
const elementTop = element.getBoundingClientRect().top;
|
|
const elementVisible = 150;
|
|
if (elementTop < window.innerHeight - elementVisible) {
|
|
element.classList.add('visible');
|
|
}
|
|
});
|
|
}
|
|
|
|
// initial check
|
|
checkScroll();
|
|
// add listener
|
|
window.addEventListener('scroll', checkScroll, { passive: true });
|
|
// also on resize/orientation change to catch changes
|
|
window.addEventListener('resize', checkScroll);
|
|
});
|
|
</script>
|
|
</body>
|
|
</html> |