fiee-official-website/src/views/companyoverview/size375/index.vue

453 lines
11 KiB
Vue
Raw Normal View History

2025-05-23 04:03:48 +00:00
<template>
<div class="home-page">
<div class="company-overview">
<!-- 顶部大图区域 -->
<div class="hero-section">
<transition name="fade-up" appear>
<n-h1 class="hero-title">{{
$t("COMPANYOVERVIEW.TITLETWO.TITLE")
}}</n-h1>
</transition>
</div>
<!-- 公司简介部分 -->
2025-05-23 07:32:12 +00:00
<section class="company-overview content-section">
<h2 class="section-title">
{{ $t("COMPANYOVERVIEW.TITLETWO.TITLE") }}
</h2>
<div class="content-block">
<p>{{ $t("COMPANYOVERVIEW.TITLETWO.CONTENT") }}</p>
<p>{{ $t("COMPANYOVERVIEW.TITLETWO.CONTENTTWO") }}</p>
<p>{{ $t("COMPANYOVERVIEW.TITLETWO.CONTENTTHREE") }}</p>
</div>
2025-05-23 04:03:48 +00:00
</section>
<!-- 使命愿景卡片 -->
2025-05-23 07:32:12 +00:00
<section class="mission-section content-section">
2025-05-23 04:03:48 +00:00
<div class="mission-cards">
<n-card hoverable class="mission-card" v-motion-pop>
<n-h3 class="card-title">{{
2025-05-23 07:32:12 +00:00
$t("COMPANYOVERVIEW.TITLETHREE.TITLE")
2025-05-23 04:03:48 +00:00
}}</n-h3>
<n-p class="card-content">{{
$t("COMPANYOVERVIEW.TITLETHREE.CONTENT")
}}</n-p>
</n-card>
<n-card hoverable class="mission-card" v-motion-pop>
<n-h3 class="card-title">{{
2025-05-23 07:32:12 +00:00
$t("COMPANYOVERVIEW.TITLETHREE.TITLE")
2025-05-23 04:03:48 +00:00
}}</n-h3>
<n-p class="card-content">{{
$t("COMPANYOVERVIEW.TITLETHREE.CONTENTTWO")
}}</n-p>
</n-card>
</div>
</section>
<!-- 里程碑时间轴 -->
2025-05-23 07:32:12 +00:00
<section class="section timeline-section content-section">
2025-05-23 04:03:48 +00:00
<n-h2 class="section-title">{{
$t("COMPANYOVERVIEW.TITLEFOUR.TITLE")
}}</n-h2>
<div class="timeline">
<!-- 1977-2015 -->
<div class="timeline-item" v-motion-slide-visible-once-bottom>
<div class="timeline-dot"></div>
<div class="timeline-content">
<n-h3 class="timeline-year">{{
$t("COMPANYOVERVIEW.TITLEFOUR.SUBHEADING")
}}</n-h3>
<n-p class="timeline-desc">{{
$t("COMPANYOVERVIEW.TITLEFOUR.paragraph.ONE")
}}</n-p>
<n-p class="timeline-desc">{{
$t("COMPANYOVERVIEW.TITLEFOUR.paragraph.TWO")
}}</n-p>
</div>
</div>
<!-- 2020 -->
<div class="timeline-item" v-motion-slide-visible-once-bottom>
<div class="timeline-dot"></div>
<div class="timeline-content">
<n-h3 class="timeline-year">{{
$t("COMPANYOVERVIEW.TITLEFOUR.SUBHEADINGTWO")
}}</n-h3>
<n-p class="timeline-desc">{{
$t("COMPANYOVERVIEW.TITLEFOUR.paragraphTwo.ONE")
}}</n-p>
<n-p class="timeline-desc">{{
$t("COMPANYOVERVIEW.TITLEFOUR.paragraphTwo.TWO")
}}</n-p>
</div>
</div>
<!-- 2021 -->
<div class="timeline-item" v-motion-slide-visible-once-bottom>
<div class="timeline-dot"></div>
<div class="timeline-content">
<n-h3 class="timeline-year">{{
$t("COMPANYOVERVIEW.TITLEFOUR.SUBHEADINGTHREE")
}}</n-h3>
<n-p class="timeline-desc">{{
$t("COMPANYOVERVIEW.TITLEFOUR.paragraphTHREE.ONE")
}}</n-p>
<n-p class="timeline-desc">{{
$t("COMPANYOVERVIEW.TITLEFOUR.paragraphTHREE.TWO")
}}</n-p>
</div>
</div>
<!-- 2023-2024 -->
<div class="timeline-item" v-motion-slide-visible-once-bottom>
<div class="timeline-dot"></div>
<div class="timeline-content">
<n-h3 class="timeline-year">{{
$t("COMPANYOVERVIEW.TITLEFOUR.SUBHEADINGFOREFF")
}}</n-h3>
<n-p class="timeline-desc">{{
$t("COMPANYOVERVIEW.TITLEFOUR.paragraphFOUR.ONE")
}}</n-p>
<n-p class="timeline-desc">{{
$t("COMPANYOVERVIEW.TITLEFOUR.paragraphFOUR.TWO")
}}</n-p>
</div>
</div>
<!-- 2025 -->
<div class="timeline-item" v-motion-slide-visible-once-bottom>
<div class="timeline-dot"></div>
<div class="timeline-content">
<n-h3 class="timeline-year">{{
$t("COMPANYOVERVIEW.TITLEFOUR.SUBHEADINGFIVE")
}}</n-h3>
<n-p class="timeline-desc">{{
$t("COMPANYOVERVIEW.TITLEFOUR.paragraphFIVE.ONE")
}}</n-p>
<n-p class="timeline-desc">{{
$t("COMPANYOVERVIEW.TITLEFOUR.paragraphFIVE.TWO")
}}</n-p>
<n-p class="timeline-desc">{{
$t("COMPANYOVERVIEW.TITLEFOUR.paragraphFIVE.THREE")
}}</n-p>
<n-p class="timeline-desc">{{
$t("COMPANYOVERVIEW.TITLEFOUR.paragraphFIVE.FOUR")
}}</n-p>
<n-p class="timeline-desc">{{
$t("COMPANYOVERVIEW.TITLEFOUR.paragraphFIVE.FIVE")
}}</n-p>
</div>
</div>
</div>
</section>
<!-- 成就部分 -->
2025-05-23 07:32:12 +00:00
<section class="achievement-section content-section" v-motion-fade>
2025-05-23 04:03:48 +00:00
<n-h2 class="section-title">{{
$t("COMPANYOVERVIEW.TITLEFIVE.TITLE")
}}</n-h2>
<n-p class="section-content">{{
$t("COMPANYOVERVIEW.TITLEFIVE.CONTENT")
}}</n-p>
</section>
</div>
</div>
</template>
<script setup>
import { ref } from "vue";
import { useI18n } from "vue-i18n";
const { t: $t } = useI18n();
const stats = ref([
{ number: "48+", labelKey: "COMPANYOVERVIEW.STATS.YEARS_IN_BUSINESS" },
{ number: "100+", labelKey: "COMPANYOVERVIEW.STATS.PATENTS" },
{ number: "Global", labelKey: "COMPANYOVERVIEW.STATS.FOOTPRINT" },
{ number: "NASDAQ", labelKey: "COMPANYOVERVIEW.STATS.LISTED_SINCE" },
]);
</script>
<style scoped>
2025-05-23 07:32:12 +00:00
/* 基础变量定义 */
:root {
--primary-color: #895bff;
--secondary-color: #fdbb2d;
--text-color: #333;
--text-color-secondary: #666;
--bg-color: #f9fafc;
--mobile-breakpoint: 768px;
}
2025-05-23 04:03:48 +00:00
.home-page {
background-image: url("@/assets/image/bg.png");
2025-05-23 07:32:12 +00:00
background-size: cover;
2025-05-23 04:03:48 +00:00
background-position: center;
background-repeat: no-repeat;
2025-05-23 07:32:12 +00:00
background-attachment: fixed;
2025-05-23 04:03:48 +00:00
}
2025-05-23 07:32:12 +00:00
/* 内容区块通用样式 */
.content-section {
padding: 0 16px;
margin-bottom: 48px;
}
.section-title {
font-size: clamp(1.5rem, 5vw, 2.2rem);
margin-bottom: 24px;
position: relative;
display: inline-block;
}
.section-title:after {
content: "";
position: absolute;
bottom: -8px;
left: 0;
width: 40px;
height: 3px;
background: linear-gradient(
to right,
var(--primary-color),
var(--secondary-color)
);
border-radius: 2px;
2025-05-23 04:03:48 +00:00
}
/* 顶部大图区域 */
.hero-section {
background: linear-gradient(135deg, #1a2a6c, #b21f1f, #fdbb2d);
background-size: 400% 400%;
animation: gradientBG 15s ease infinite;
color: white;
2025-05-23 07:32:12 +00:00
padding: 80px 16px;
2025-05-23 04:03:48 +00:00
text-align: center;
2025-05-23 07:32:12 +00:00
margin-bottom: 48px;
border-radius: 0 0 16px 16px;
box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);
2025-05-23 04:03:48 +00:00
}
.hero-title {
2025-05-23 07:32:12 +00:00
font-size: clamp(2rem, 6vw, 3.5rem);
margin-bottom: 16px;
2025-05-23 04:03:48 +00:00
font-weight: 700;
2025-05-23 07:32:12 +00:00
text-shadow: 0 2px 10px rgba(0, 0, 0, 0.2);
2025-05-23 04:03:48 +00:00
}
2025-05-23 07:32:12 +00:00
/* 公司简介部分 */
.company-overview.content-section {
margin-top: -24px;
background-color: white;
border-radius: 16px;
padding: 32px 24px;
box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
2025-05-23 04:03:48 +00:00
position: relative;
2025-05-23 07:32:12 +00:00
z-index: 10;
2025-05-23 04:03:48 +00:00
}
2025-05-23 07:32:12 +00:00
.content-block p {
margin-bottom: 16px;
2025-05-23 04:03:48 +00:00
line-height: 1.8;
2025-05-23 07:32:12 +00:00
text-align: justify;
2025-05-23 04:03:48 +00:00
}
/* 使命愿景卡片 */
.mission-cards {
display: grid;
2025-05-23 07:32:12 +00:00
grid-template-columns: 1fr;
gap: 24px;
2025-05-23 04:03:48 +00:00
}
.mission-card {
background: white;
2025-05-23 07:32:12 +00:00
padding: 28px 24px;
2025-05-23 04:03:48 +00:00
border-radius: 12px;
2025-05-23 07:32:12 +00:00
box-shadow: 0 6px 20px rgba(0, 0, 0, 0.07);
2025-05-23 04:03:48 +00:00
transition: transform 0.3s ease, box-shadow 0.3s ease;
2025-05-23 07:32:12 +00:00
border: 1px solid #eee;
2025-05-23 04:03:48 +00:00
}
.mission-card:hover {
2025-05-23 07:32:12 +00:00
transform: translateY(-3px);
box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1);
2025-05-23 04:03:48 +00:00
}
.card-title {
2025-05-23 07:32:12 +00:00
font-size: 1.3rem;
margin-bottom: 16px;
color: var(--primary-color);
font-weight: 600;
2025-05-23 04:03:48 +00:00
}
.card-content {
2025-05-23 07:32:12 +00:00
font-size: 1rem;
2025-05-23 04:03:48 +00:00
line-height: 1.7;
2025-05-23 07:32:12 +00:00
color: var(--text-color-secondary);
2025-05-23 04:03:48 +00:00
}
/* 时间轴样式 */
.timeline {
position: relative;
2025-05-23 07:32:12 +00:00
padding-left: 36px;
margin-top: 32px;
2025-05-23 04:03:48 +00:00
}
.timeline:before {
content: "";
position: absolute;
top: 0;
2025-05-23 07:32:12 +00:00
left: 16px;
2025-05-23 04:03:48 +00:00
height: 100%;
2025-05-23 07:32:12 +00:00
width: 2px;
background: linear-gradient(
to bottom,
var(--primary-color),
var(--secondary-color)
);
2025-05-23 04:03:48 +00:00
}
.timeline-item {
position: relative;
2025-05-23 07:32:12 +00:00
margin-bottom: 36px;
2025-05-23 04:03:48 +00:00
}
.timeline-dot {
position: absolute;
2025-05-23 07:32:12 +00:00
left: -36px;
2025-05-23 04:03:48 +00:00
top: 5px;
2025-05-23 07:32:12 +00:00
width: 32px;
height: 32px;
2025-05-23 04:03:48 +00:00
border-radius: 50%;
2025-05-23 07:32:12 +00:00
background: var(--primary-color);
2025-05-23 04:03:48 +00:00
display: flex;
align-items: center;
justify-content: center;
color: white;
font-weight: bold;
2025-05-23 07:32:12 +00:00
box-shadow: 0 0 0 4px rgba(137, 91, 255, 0.15);
font-size: 0.9rem;
2025-05-23 04:03:48 +00:00
}
.timeline-year {
2025-05-23 07:32:12 +00:00
font-size: 1.2rem;
margin-bottom: 12px;
color: var(--primary-color);
font-weight: 600;
2025-05-23 04:03:48 +00:00
}
.timeline-desc {
2025-05-23 07:32:12 +00:00
font-size: 1rem;
2025-05-23 04:03:48 +00:00
line-height: 1.7;
2025-05-23 07:32:12 +00:00
margin-bottom: 8px;
color: var(--text-color-secondary);
2025-05-23 04:03:48 +00:00
}
/* 成就部分 */
.achievement-section {
2025-05-23 07:32:12 +00:00
background: var(--bg-color);
padding: 32px 24px;
border-radius: 16px;
margin-top: 48px;
2025-05-23 04:03:48 +00:00
}
.achievement-stats {
display: grid;
2025-05-23 07:32:12 +00:00
grid-template-columns: repeat(2, 1fr);
gap: 16px;
margin-top: 32px;
2025-05-23 04:03:48 +00:00
}
.stat-item {
text-align: center;
2025-05-23 07:32:12 +00:00
padding: 24px 16px;
2025-05-23 04:03:48 +00:00
background: white;
2025-05-23 07:32:12 +00:00
border-radius: 12px;
box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05);
2025-05-23 04:03:48 +00:00
transition: transform 0.3s ease;
2025-05-23 07:32:12 +00:00
border: 1px solid #f0f0f0;
2025-05-23 04:03:48 +00:00
}
.stat-item:hover {
2025-05-23 07:32:12 +00:00
transform: translateY(-3px);
2025-05-23 04:03:48 +00:00
}
.stat-number {
2025-05-23 07:32:12 +00:00
font-size: 1.8rem;
color: var(--primary-color);
margin-bottom: 8px;
font-weight: 600;
2025-05-23 04:03:48 +00:00
}
.stat-label {
2025-05-23 07:32:12 +00:00
font-size: 0.95rem;
2025-05-23 04:03:48 +00:00
color: var(--text-color-secondary);
2025-05-23 07:32:12 +00:00
line-height: 1.4;
2025-05-23 04:03:48 +00:00
}
/* 动画 */
@keyframes gradientBG {
0% {
background-position: 0% 50%;
}
50% {
background-position: 100% 50%;
}
100% {
background-position: 0% 50%;
}
}
2025-05-23 07:32:12 +00:00
/* 响应式设计 - 针对平板和桌面端的优化 */
@media (min-width: 768px) {
.content-section {
padding: 0 32px;
margin-bottom: 64px;
2025-05-23 04:03:48 +00:00
}
2025-05-23 07:32:12 +00:00
.hero-section {
padding: 120px 32px;
margin-bottom: 64px;
2025-05-23 04:03:48 +00:00
}
2025-05-23 07:32:12 +00:00
.company-overview.content-section {
margin-top: -32px;
padding: 40px 32px;
}
.mission-cards {
grid-template-columns: repeat(2, 1fr);
}
.achievement-stats {
grid-template-columns: repeat(4, 1fr);
2025-05-23 04:03:48 +00:00
}
.timeline {
2025-05-23 07:32:12 +00:00
padding-left: 50px;
}
.timeline:before {
left: 20px;
width: 4px;
2025-05-23 04:03:48 +00:00
}
.timeline-dot {
2025-05-23 07:32:12 +00:00
left: -50px;
width: 40px;
height: 40px;
font-size: 1rem;
2025-05-23 04:03:48 +00:00
}
2025-05-23 07:32:12 +00:00
}
2025-05-23 04:03:48 +00:00
2025-05-23 07:32:12 +00:00
/* 针对更大屏幕的优化 */
@media (min-width: 1024px) {
.content-section {
max-width: 1200px;
margin-left: auto;
margin-right: auto;
2025-05-23 04:03:48 +00:00
}
}
</style>