CSS 从 * 选择器中排除标签

Ane*_*ess 3 html css

我正在制作一个小型 CSS 样式表。我想将所有文本内容重新设置为 Roboto 字体。我在下面写了这段代码:*{font-family:Roboto !important;}

现在如何选择除图标之外的所有内容(我想从选择器中排除图标 (i) 标签,有些使用 FontAwesome,有些使用其他图标字体)

那么我可以在 * 选择器中添加一些内容来选择图标之外的所有内容吗?

Sog*_*ing 5

对您不想应用该样式的类进行否定:

例如:

*:not(.fa) {
    font-family: Roboto !important;
}
Run Code Online (Sandbox Code Playgroud)

通常图标位于“i”元素中,您也可以执行以下操作来影响任何图标:

*:not(i) {
    font-family: Roboto !important;
}
Run Code Online (Sandbox Code Playgroud)

但是使用“i”元素不是强制性的,并且可能存在不作为“i”标签的图标,以及作为“i”标签的普通文本(尽管这是非常不寻常的)

另外,请考虑到使用“!important”并不是一个好的做法,尤其是对于如此通用的规则。