繁体   English   中英

CSS覆盖元素的现有样式

[英]CSS overwrite existing style for an element

我有一个css样式的<A>标记网页。 该样式也为该标签的A:Hover编写。 但是我只想为特定标签删除它。 我可以在CSS中设置一个属性,使其值保持不变。

让我们希望这样

A:hover {
font-family:no-change;
}

还是有什么特定的方法可以避免A:tag特定标签使用A:tag

我通常不喜欢在不需要使用!important的地方使用它。

在这种情况下,您可以对<a>标签使用常规样式

a:hover {
  font-family: 'Some weird font';
}

然后在您想要不同行为的标签上设置一个类或id或诸如此类,并使用inherit防止字体更改

a.special:hover {
  font-family: inherit;
}

这是font-family属性的默认值,基本上说“对这个元素进行处理,就好像它没有自己的样式-像往常一样从父级那里获取它”

如果您的“特定”锚标签具有类或ID,则可以使用:not伪类

a:not(.exemptedSelector):hover {  
 /*Your style goes here*/
}

演示版

文献资料

支持

或者只是为您的“特定”锚标签提供一种悬停样式,以覆盖使用A标签提供的样式。

.exemptedSelector:hover
{
/*Your style goes here*/
}

提及该特定a的字体名称,并在其后面附加!important 喜欢:

font-family:Arial !important;

或者,创建一个具有悬停样式的类(例如.special ),并将其用于特定的a

.special:hover
{
    font-family:Arial;
}

我喜欢PSL的解决方案。

您可以设置style属性并设置font-family的值,以覆盖css所说的内容。

<a style="font-family: arial"></a>

jsFiddle上使用颜色的示例

给您的锚点一个类,否则这将影响所有锚点:

HTML:

<a href="#" class="link_class">the link</a>
<a href="#" >other link</a>
<a href="#" >other link</a>
<a href="#" >other link</a>

CSS:

.link_class:hover{
 font-family: 'default_font_family' !important;
}

如果您希望适用于所有锚点,则:

CSS(不使用大写字母):

a:hover{
 font-family: 'default_font_family' !important;
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM