【发布时间】:2021-10-03 19:21:15
【问题描述】:
由于某种原因,这在 Vue 3 中有效,它说在所有其他 SO 答案中都已弃用:
.description >>> p {
color: red;
margin-bottom: 1rem;
}
但我已经尝试了 ::v-deep 的所有排列,但似乎无法使其工作:
::v-deep .description {
p {
color: red;
margin-bottom: 1rem;
}
}
.description {
::v-deep p {
margin-bottom: 1rem;
}
}
我将如何使用“vanilla”Vue 3 做到这一点?
<div class="description text-sm">
<div v-html="item.description"></div>
</div>
我想做什么:
<style scoped>
.description p {
margin-bottom: 1rem;
}
</style>
【问题讨论】:
-
为什么简单的
.description p不起作用? -
因为我想要一个范围样式
-
哦,我试过了,只是在作用域 css 块中的
.description p不起作用。我不知道为什么...... -
好的,但是没有作用域语法它可以工作吗?浏览器当然不能拒绝为元素着色。
p标签肯定存在于输出中?您能否添加一个示例item.description只是为了完整?或者完全把它变成一个 sn-p? -
啊,关键是我不想要全局样式,我想要这个组件的范围样式。是的,这会起作用,但它也会用我不想做的全局样式弄脏我的工作表
标签: css vue.js vue-component css-modules