所有以此开头的标签
有没有什么方法可以为所有以某些前缀开头的标签指定样式?
例如:
tst-* {
display: block;
background: yellow;
}
<tst-some-tag>Some content</tst-some-tag>
我想要这样的选择器的原因是因为我正在使用Angular并且有很多自定义组件。 所有这些应该显示为block
。 指定所有自定义元素的display
属性可能会很舒服,而不是每次添加类时使用它们。
如果你想按类名选择元素,你可以这样做: [class^='class']
如果你想通过id选择元素,只需执行以下操作: [id^='id']
在这两种情况下,您都可以选择所有元素,以单引号之间的文本开头 ,可以按类名或按ID进行选择。
变化也是可能的: div[class^='class']
或div[id^='id']
您可以将另一个类添加到Angular中具有相同CSS的那些元素
<tst-some-tag class="tst-class">Some content</tst-some-tag>
您可以像jQuery一样简单地向Angular添加类
var myEl = angular.element( document.querySelector( 'tst-some-tag' ) );
myEl.addClass('tst-class');
根据所有答案,最好的解决方案是编写特定的类并将其添加到每个自定义元素上。
.tst {
display: block;
background: yellow;
}
<tst-some-tag class="tst">Some content</tst-some-tag>
下一篇: Difference between addOnLayoutChangeListener and onLayout(changed)?