53 lines
1.2 KiB
Vue
53 lines
1.2 KiB
Vue
<template>
|
|
<div class="section-view" :style="isCssStyle">
|
|
<div class="section-view-h5-wrap">
|
|
<slot></slot>
|
|
</div>
|
|
</div>
|
|
</template>
|
|
|
|
<script>
|
|
export default {
|
|
name: "SectionView",
|
|
props:{
|
|
cssStyle:{
|
|
type:Object,
|
|
default:()=>{
|
|
return {}
|
|
}
|
|
}
|
|
},
|
|
computed:{
|
|
isCssStyle(){
|
|
return this.cssStyle
|
|
}
|
|
},
|
|
mounted() {
|
|
// First we get the viewport height and we multiple it by 1% to get a value for a vh unit
|
|
// let vh = window.innerHeight * 0.01
|
|
// // Then we set the value in the --vh custom property to the root of the document
|
|
// document.documentElement.style.setProperty('--vh', `${vh}px`)
|
|
//
|
|
// // We listen to the resize event
|
|
// window.addEventListener('resize', () => {
|
|
// // We execute the same script as before
|
|
// let vh = window.innerHeight * 0.01
|
|
// console.log(vh);
|
|
// document.documentElement.style.setProperty('--vh', `${vh}px`)
|
|
// })
|
|
}
|
|
}
|
|
</script>
|
|
|
|
<style scoped lang="less">
|
|
.section-view{
|
|
width: 100%;
|
|
min-height: 100vh;
|
|
box-sizing: border-box;
|
|
&-h5-wrap{
|
|
display: block;
|
|
height: 100%;
|
|
}
|
|
}
|
|
</style>
|