|
|
@@ -1,7 +1,259 @@
|
|
|
<template>
|
|
|
-
|
|
|
+ <section class="service-container">
|
|
|
+ <NuxtImg src="/images/products/SecurityServicesSuite.png" class="bg-img" alt="bg-img" />
|
|
|
+ <div class="service-content">
|
|
|
+ <h2>为您定制的企业级安全服务包</h2>
|
|
|
+ <div class="service-cards">
|
|
|
+ <div v-for="(item, index) in products" :key="index" class="service-card">
|
|
|
+ <div class="card-title">{{ item.title }}</div>
|
|
|
+ <template v-if="item.price">
|
|
|
+ <div class="card-price">
|
|
|
+ <span class="amount">${{ item.price }}</span>
|
|
|
+ <span class="unit">{{ item.unit }}</span>
|
|
|
+ </div>
|
|
|
+ <div class="payment-support">
|
|
|
+ 支持 <img width="22" height="22" src="/images/products/icon.png" alt="icon"> 支付
|
|
|
+ </div>
|
|
|
+ </template>
|
|
|
+ <template v-else>
|
|
|
+ <div class="customized-icon">
|
|
|
+ <NuxtPicture width="112" height="112" src="/images/products/customized.png" alt="定制" />
|
|
|
+ </div>
|
|
|
+ </template>
|
|
|
+ <button class="action-btn">{{ item.btnText }}</button>
|
|
|
+ <div class="features-list">
|
|
|
+ <div v-for="(feature, idx) in item.features" :key="idx" class="feature-item">
|
|
|
+ <span class="label">{{ feature.label }}</span>
|
|
|
+ <span class="value">{{ feature.value }}</span>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </section>
|
|
|
</template>
|
|
|
<script setup>
|
|
|
-
|
|
|
+const products = [
|
|
|
+ {
|
|
|
+ title: '标准版',
|
|
|
+ price: '299',
|
|
|
+ unit: '/月',
|
|
|
+ btnText: '立即开通',
|
|
|
+ features: [
|
|
|
+ { label: 'DDoS防护值', value: '150Gbps' },
|
|
|
+ { label: 'CC防御值', value: '30000QPS' },
|
|
|
+ { label: '域名', value: '5个' },
|
|
|
+ { label: '防御端口', value: '10个' },
|
|
|
+ { label: '业务宽带', value: '50Mbps' },
|
|
|
+ { label: 'SSL', value: '支持' },
|
|
|
+ { label: 'Websocket', value: '支持' },
|
|
|
+ { label: '网络', value: 'BGP/CN2网络' },
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: '高级版',
|
|
|
+ price: '1199',
|
|
|
+ unit: '/月',
|
|
|
+ btnText: '立即开通',
|
|
|
+ features: [
|
|
|
+ { label: 'DDoS防护值', value: '400Gbps' },
|
|
|
+ { label: 'CC防御值', value: '50000QPS' },
|
|
|
+ { label: '域名', value: '10个' },
|
|
|
+ { label: '防御端口', value: '20个' },
|
|
|
+ { label: '业务宽带', value: '100Mbps' },
|
|
|
+ { label: 'SSL', value: '支持' },
|
|
|
+ { label: 'Websocket', value: '支持' },
|
|
|
+ { label: '网络', value: 'BGP/CN2网络' },
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: '至尊版',
|
|
|
+ price: '2999',
|
|
|
+ unit: '/月',
|
|
|
+ btnText: '立即开通',
|
|
|
+ features: [
|
|
|
+ { label: 'DDoS防护值', value: '600Gbps' },
|
|
|
+ { label: 'CC防御值', value: '15WQPS' },
|
|
|
+ { label: '域名', value: '50个' },
|
|
|
+ { label: '防御端口', value: '50个' },
|
|
|
+ { label: '业务宽带', value: '500Mbps' },
|
|
|
+ { label: 'SSL', value: '支持' },
|
|
|
+ { label: 'Websocket', value: '支持' },
|
|
|
+ { label: '网络', value: 'BGP/CN2网络' },
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: '定制版',
|
|
|
+ btnText: '联系商务',
|
|
|
+ features: [
|
|
|
+ { label: 'DDoS防护值', value: 'T级防御' },
|
|
|
+ { label: 'CC防御值', value: '免疫98%CC' },
|
|
|
+ { label: '域名', value: '定制' },
|
|
|
+ { label: '防御端口', value: '定制' },
|
|
|
+ { label: '业务宽带', value: '定制' },
|
|
|
+ { label: 'SSL', value: '定制' },
|
|
|
+ { label: 'Websocket', value: '定制' },
|
|
|
+ { label: '网络', value: 'BGP/CN2网络' },
|
|
|
+ ]
|
|
|
+ }
|
|
|
+]
|
|
|
</script>
|
|
|
-<style lang="scss" scoped></style>
|
|
|
+<style lang="scss" scoped>
|
|
|
+.service-container {
|
|
|
+ width: 100%;
|
|
|
+ height: 1150px;
|
|
|
+ position: relative;
|
|
|
+ overflow: hidden;
|
|
|
+
|
|
|
+ .bg-img {
|
|
|
+ position: absolute;
|
|
|
+ top: 0;
|
|
|
+ left: 0;
|
|
|
+ width: 100%;
|
|
|
+ height: auto;
|
|
|
+ z-index: 1;
|
|
|
+ }
|
|
|
+
|
|
|
+ .service-content {
|
|
|
+ position: relative;
|
|
|
+ z-index: 2;
|
|
|
+ padding-top: 306px;
|
|
|
+ width: 100%;
|
|
|
+ display: flex;
|
|
|
+ flex-direction: column;
|
|
|
+ align-items: center;
|
|
|
+
|
|
|
+ h2 {
|
|
|
+ font-size: 45px;
|
|
|
+ font-style: normal;
|
|
|
+ font-weight: 500;
|
|
|
+ line-height: 45px;
|
|
|
+ background: linear-gradient(91deg, #B8AFFF 10.8%, #C597FF 108.3%);
|
|
|
+ background-clip: text;
|
|
|
+ -webkit-background-clip: text;
|
|
|
+ -webkit-text-fill-color: transparent;
|
|
|
+ }
|
|
|
+
|
|
|
+ .service-cards {
|
|
|
+ margin-top: 82px;
|
|
|
+ display: flex;
|
|
|
+ justify-content: center;
|
|
|
+ gap: 12px;
|
|
|
+
|
|
|
+ .service-card {
|
|
|
+ border-radius: 10px;
|
|
|
+ background: #1B192A;
|
|
|
+ width: 290px;
|
|
|
+ height: 610px;
|
|
|
+ flex-shrink: 0;
|
|
|
+ padding: 42px 20px;
|
|
|
+ display: flex;
|
|
|
+ flex-direction: column;
|
|
|
+ align-items: center;
|
|
|
+ color: #fff;
|
|
|
+ box-sizing: border-box;
|
|
|
+ transition: transform .3s ease;
|
|
|
+
|
|
|
+ &:hover {
|
|
|
+ transform: translateY(-5px);
|
|
|
+ border: 1px solid #BF69FF;
|
|
|
+ background: linear-gradient(176deg, rgba(146, 116, 254, 0.20) -10.82%, rgba(125, 70, 255, 0.20) 109.01%);
|
|
|
+ }
|
|
|
+
|
|
|
+ &:hover .action-btn {
|
|
|
+ background: linear-gradient(91deg, #A39DFF 1.24%, #7D46FF 122.93%);
|
|
|
+ }
|
|
|
+
|
|
|
+ .card-title {
|
|
|
+ color: #FFF;
|
|
|
+ text-align: center;
|
|
|
+ font-size: 26px;
|
|
|
+ font-style: normal;
|
|
|
+ font-weight: 400;
|
|
|
+ line-height: 26px;
|
|
|
+ }
|
|
|
+
|
|
|
+ .customized-icon {
|
|
|
+ padding-top: 12px
|
|
|
+ }
|
|
|
+
|
|
|
+ .card-price {
|
|
|
+ display: flex;
|
|
|
+ align-items: baseline;
|
|
|
+ padding: 25px 0 18px 0;
|
|
|
+
|
|
|
+ .amount {
|
|
|
+ font-size: 50px;
|
|
|
+ font-style: normal;
|
|
|
+ font-weight: 700;
|
|
|
+ line-height: 50px;
|
|
|
+ background: linear-gradient(91deg, #B8AFFF 10.8%, #C597FF 108.3%);
|
|
|
+ background-clip: text;
|
|
|
+ -webkit-background-clip: text;
|
|
|
+ -webkit-text-fill-color: transparent;
|
|
|
+ }
|
|
|
+
|
|
|
+ .unit {
|
|
|
+ color: #FFF;
|
|
|
+ font-size: 26px;
|
|
|
+ font-style: normal;
|
|
|
+ font-weight: 400;
|
|
|
+ line-height: 50px;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ .payment-support {
|
|
|
+ display: flex;
|
|
|
+ align-items: center;
|
|
|
+ gap: 5px;
|
|
|
+ color: #FFF;
|
|
|
+ font-size: 18px;
|
|
|
+ font-style: normal;
|
|
|
+ font-weight: 400;
|
|
|
+ line-height: 18px;
|
|
|
+ }
|
|
|
+
|
|
|
+ .action-btn {
|
|
|
+ display: flex;
|
|
|
+ justify-content: center;
|
|
|
+ align-items: center;
|
|
|
+ width: 250px;
|
|
|
+ height: 50px;
|
|
|
+ margin-top: 34px;
|
|
|
+ gap: 10px;
|
|
|
+ border-radius: 50px;
|
|
|
+ background: rgba(255, 255, 255, 0.20);
|
|
|
+ color: #FFF;
|
|
|
+ font-size: 24px;
|
|
|
+ font-weight: 400;
|
|
|
+ cursor: pointer;
|
|
|
+ }
|
|
|
+
|
|
|
+ .features-list {
|
|
|
+ width: 100%;
|
|
|
+ display: flex;
|
|
|
+ flex-direction: column;
|
|
|
+ gap: 10px;
|
|
|
+ margin-top: 20px;
|
|
|
+
|
|
|
+ .feature-item {
|
|
|
+ display: flex;
|
|
|
+ justify-content: space-between;
|
|
|
+ font-size: 16px;
|
|
|
+ font-weight: 400;
|
|
|
+
|
|
|
+ .label {
|
|
|
+ color: rgba(255, 255, 255, 0.60)
|
|
|
+ }
|
|
|
+
|
|
|
+ .value {
|
|
|
+ color: #FFF;
|
|
|
+ text-align: right;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+}
|
|
|
+</style>
|