在我的项目中,我使用 vue.js 2,并且我有一个img
组件。
这是它的代码:
<template>
<div class="banner">
<img class="banner-img" :src="bannerImg"/>
</div>
</template>
<script>
export default {
name: 'DetailBanner',
props: {
sightName: String,
bannerImg: String,
gallaryImgs: Array
}
}
</script>
<style lang="stylus" scoped>
.banner
position: relative
overflow: hidden
height: 0
padding-bottom: 55%
.banner-img
width: 100%
img 的网址是:
http://img1.qunarzz.com/sight/p0/201404/23/04b92c99462687fa1ba45c1b5ba4ad77.jpg_600x330_bf9c4904.jpg
在这里我不想显示这个 img,所以我在 CSS 中设置 height:0。
但不幸的是,它失败了。我已经测试了删除高度:0,它显示的都是一样的。
为什么身高:0不行,谁能帮我?
你可以利用 Vue.js 并使用v-if
来显示/隐藏你的图像,如下所示:
<template>
<div class="banner" v-if="showImg">
<img class="banner-img" :src="bannerImg"/>
</div>
</template>
<script>
export default {
name: 'DetailBanner',
props: {
sightName: String,
bannerImg: String,
gallaryImgs: Array
},
data(){
return{
showImg:false
}
}
}
</script>
你可以把showImg
放在你的props
中,这样你可以只使用 Vue 来改变图像状态.js避免在 CSS 上挣扎