Browse Source

top menu

master
maochaoying 2 years ago
parent
commit
70d50c7b2f
  1. 41
      src/components/CaseCard.vue
  2. 11
      src/components/SubNavigation.vue
  3. 56
      src/components/Track.vue
  4. 20
      src/pages/CaseShow.vue
  5. BIN
      src/static/img/banner/arrow.png

41
src/components/CaseCard.vue

@ -1,43 +1,37 @@
<template>
<div class="case_card_container">
<div class="card">
<div class="icon"></div>
<p class="title">医疗健康</p>
<div class="track_container">
<div
:class="item.bg ? 'card bg' : 'card'"
v-for="item in trackList"
:key="item.id"
>
<img class="icon" :src="item.pic" />
<p class="title">{{ item.title }}</p>
<div class="btn">点击查看更多</div>
</div>
<div class="card"></div>
<div class="card"></div>
<div class="card"></div>
<div class="card"></div>
<div class="card"></div>
<div class="card"></div>
<div class="card"></div>
<div class="card"></div>
</div>
</template>
<script setup></script>
<script setup>
import { trackList } from '@/mock'
</script>
<style lang="scss" scoped>
.case_card_container {
.track_container {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-template-rows: repeat(3, 1fr);
box-sizing: border-box;
.card {
flex: 1;
height: 125px;
background: #fff;
padding: 30px 0;
display: flex;
flex-direction: column;
align-items: center;
padding: 30px 0;
box-sizing: border-box;
&:nth-child(odd) {
background: #fafafa;
}
.icon {
width: 20px;
width: auto;
height: 20px;
background: #000;
margin-bottom: 11px;
}
.title {
@ -60,5 +54,8 @@
white-space: nowrap;
}
}
.bg {
background: #fafafa;
}
}
</style>

11
src/components/SubNavigation.vue

@ -1,17 +1,22 @@
<template>
<div class="sub_navigation_container">
<div class="back_icon"></div>
<img class="back_icon" :src="Left" @click="backPage" />
<p class="title">{{ title }}</p>
<p class="menu"></p>
<img class="menu" :src="Menu" />
</div>
</template>
<script setup>
import Menu from '@/static/img/banner/liebiao2.png'
import Left from '@/static/img/banner/arrow.png'
const props = defineProps({
title: {
type: String,
},
})
const backPage = () => {
history.back()
}
</script>
<style lang="scss" scoped>
@ -31,7 +36,6 @@ const props = defineProps({
.back_icon {
width: 8px;
height: 15px;
background: #000;
}
.title {
font-size: 10px;
@ -42,7 +46,6 @@ const props = defineProps({
.menu {
width: 18px;
height: 12px;
background: #262626;
}
}
</style>

56
src/components/Track.vue

@ -1,67 +1,19 @@
<template>
<div>
<HeadLine themeTitle="赛道" title="九大" line1="TRACK" :flip="true" />
<div class="track_container">
<div
:class="item.bg ? 'card bg' : 'card'"
v-for="item in trackList"
:key="item.id"
>
<img class="icon" :src="item.pic" />
<p class="title">{{ item.title }}</p>
<div class="btn">点击查看更多</div>
</div>
<div class="track_container_case_wrap">
<CaseCard />
</div>
</div>
</template>
<script setup>
import HeadLine from 'cpns/HeadLine'
import { trackList } from '@/mock'
import CaseCard from 'cpns/CaseCard'
</script>
<style lang="scss" scoped>
.track_container {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-template-rows: repeat(3, 1fr);
.track_container_case_wrap {
padding: 0 7px;
padding-top: 7px;
box-sizing: border-box;
.card {
flex: 1;
background: #fff;
padding: 30px 0;
display: flex;
flex-direction: column;
align-items: center;
.icon {
width: auto;
height: 20px;
margin-bottom: 11px;
}
.title {
font-size: 8px;
font-family: Alibaba PuHuiTi;
font-weight: 400;
color: #262626;
margin-bottom: 9px;
}
.btn {
border: 1px solid #262626;
padding: 3px 6px;
display: flex;
align-items: center;
justify-content: center;
font-size: 6px;
font-family: Alibaba PuHuiTi;
font-weight: 300;
color: #262626;
white-space: nowrap;
}
}
.bg {
background: #fafafa;
}
}
</style>

20
src/pages/CaseShow.vue

@ -7,30 +7,16 @@
line1="我们精通气动、液动、电动等各种传动机构"
line2="完成机械所需的各种动作"
/>
<div class="line_cards">
<div class="card">
<p class="title">国网照明巡检摄像头</p>
<div class="img_box">
<div class="img"></div>
<div class="bottom_text">
<p>工业设计</p>
<p>软硬件研发</p>
<p>样机制作</p>
<p>量产</p>
</div>
</div>
</div>
<div class="card"></div>
<div class="card"></div>
<div class="card"></div>
</div>
<Card :caseList="caseList" />
</div>
</template>
<script setup>
import CaseCard from 'cpns/CaseCard'
import Card from 'cpns/Card'
import SubNavigation from 'cpns/SubNavigation'
import HeadLine from 'cpns/HeadLine'
import { caseList } from '@/mock'
</script>
<style lang="scss" scoped>

BIN
src/static/img/banner/arrow.png

After

Width: 24  |  Height: 42  |  Size: 650 B

Loading…
Cancel
Save