【发布时间】:2018-04-21 14:45:18
【问题描述】:
我需要从父级修改 Vue 组件的一些 CSS 属性。它将覆盖组件中定义的 CSS。
我首先期望对于组件<my-component>,我可以直接从父元素中对其进行样式设置,就像任何其他元素一样:
my-component {
font-weight: bolder;
}
这不起作用。
我尝试的第二个解决方案是将 prop 传递给组件,其中包含要在样式中使用的相关信息。这可行,但我仍然希望有一个更接近继承机制的解决方案(其中父项的设置优先于子项的设置,类似于设置<b> 元素的样式)。
有这样的机制吗?
【问题讨论】:
-
向子组件的根元素添加一个类(如
class="my-component"),然后您可以使用该类.my-component从父作用域添加样式。 -
@thanksd:我刚刚测试了您的解决方案,它运行良好,谢谢!你能把它变成一个答案吗?出于好奇,您知道为什么我的问题中的解决方案 1 不起作用(设置组件名称的样式) - 因为通过其类进行样式设置是可以的?
标签: css vue.js vue-component