88 lines
1.8 KiB
Vue
88 lines
1.8 KiB
Vue
<template>
|
|
<div class="border-container">
|
|
<img src="../image/u91.svg" alt="" class="border-w">
|
|
<img src="../image/u93.svg" alt="" class="border-t">
|
|
<div class="top">
|
|
{{ prop.title }}
|
|
</div>
|
|
<div class="border-content">
|
|
<slot></slot>
|
|
</div>
|
|
</div>
|
|
</template>
|
|
|
|
<script setup lang='ts'>
|
|
const prop = defineProps({
|
|
title: {
|
|
type: String,
|
|
default: '边框'
|
|
}
|
|
})
|
|
</script>
|
|
|
|
<style scoped>
|
|
.border-container {
|
|
width: 100%;
|
|
height: 100%;
|
|
position: relative;
|
|
display: flex;
|
|
flex-direction: column;
|
|
justify-content: space-between;
|
|
align-items: center;
|
|
}
|
|
|
|
.border-w {
|
|
width: 100%;
|
|
height: 100%;
|
|
position: absolute;
|
|
top: 0;
|
|
left: 0;
|
|
}
|
|
|
|
.border-t {
|
|
width: 55%;
|
|
height: 10%;
|
|
position: absolute;
|
|
top: 0;
|
|
left: 22.5%;
|
|
}
|
|
|
|
|
|
|
|
.top {
|
|
width: 100%;
|
|
height: 10%;
|
|
font-size: 20px;
|
|
font-weight: 700;
|
|
position: relative;
|
|
display: flex;
|
|
justify-content: center;
|
|
align-items: center;
|
|
}
|
|
|
|
.top::after {
|
|
content: '';
|
|
border-width: 0px;
|
|
position: absolute;
|
|
left: 37.5%;
|
|
bottom: -3px;
|
|
width: 25%;
|
|
height: 6px;
|
|
background: -webkit-linear-gradient(0deg, rgba(25, 126, 207, 1) 0%, rgba(25, 126, 207, 1) 0%, rgba(50, 214, 249, 1) 100%, rgba(50, 214, 249, 1) 100%);
|
|
background: -moz-linear-gradient(90deg, rgba(25, 126, 207, 1) 0%, rgba(25, 126, 207, 1) 0%, rgba(50, 214, 249, 1) 100%, rgba(50, 214, 249, 1) 100%);
|
|
background: linear-gradient(90deg, rgba(25, 126, 207, 1) 0%, rgba(25, 126, 207, 1) 0%, rgba(50, 214, 249, 1) 100%, rgba(50, 214, 249, 1) 100%);
|
|
border: none;
|
|
border-radius: 25px;
|
|
-moz-box-shadow: 0px -2px 20px rgba(45, 196, 240, 1);
|
|
-webkit-box-shadow: 0px -2px 20px rgba(45, 196, 240, 1);
|
|
box-shadow: 0px -2px 20px rgba(45, 196, 240, 1);
|
|
}
|
|
|
|
.border-content {
|
|
width: 100%;
|
|
height: 90%;
|
|
box-sizing: border-box;
|
|
padding: 5px;
|
|
}
|
|
</style>
|