作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在用 Vue 构建一个需要动态背景的横幅,但是,它似乎不起作用。不知道我做错了什么。我已经尝试了其他一些方法,如果我做一个类似的图像标签,它会起作用
<img :src="require(`@/assets/images/${backgroundImage}`)" />
<template>
<div
class="w-full h-64 bg-auto bg-no-repeat bg-center lg:bg-cover relative"
:style="{ backgroundImage: url(require('@/assets/images/' + backgroundImage))}"
>
<div class="w-full h-full flex flex-col justify-center items-center text-white px-6">
<div class="hero-text rounded text-center py-8 px-12">
<p class="text-base lg:text-md uppercase font-medium">{{ smallLeadingText }}</p>
<h1 class="text-xl md:text-3xl lg:text-5xl uppercase font-bold">{{ mainText }}</h1>
<p class="text-base lg:text-md">{{ subText }}</p>
</div>
</div>
</div>
</template>
<script>
export default {
name: "PageHero",
props: {
backgroundImage: String,
smallLeadingText: {
type: String,
required: false
},
mainText: {
type: String,
required: true
},
subText: {
type: String,
required: false
}
}
};
</script>
<PageHero
backgroundImage="mc-background.png "
smallLeadingText="Powerful, secure & affordable"
mainText="Minecraft hosting"
subText="Plans suitable for all budgets"
/>
最佳答案
看起来您的 style
中出现了一些语法错误。字符串引用周围的属性。尝试
<div :style="{ backgroundImage: `url(${require('@/assets/images/' + backgroundImage)})` }">
computed: {
bgImage () {
return require('@/assets/images/' + this.backgroundImage)
},
inlineStyle () {
return {
backgroundImage: `url(${this.bgImage})`
}
}
}
<div :style="inlineStyle">
关于javascript - Vue动态背景图片内联组件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60859602/
我是一名优秀的程序员,十分优秀!