html - 如何在 CSS 选择器中排除特定的类名?

标签 html css css-selectors

当用户鼠标悬停在类名为 "reMode_hover" 的元素上时,我尝试应用背景颜色。

但如果元素"reMode_selected"

,我不想改变颜色

注意:我只能使用 CSS 而不是 javascript,因为我在某种有限的环境中工作。

澄清一下,我的目标是在悬停时为第一个元素着色,而不是为第二个元素着色。

HTML

<a href="" title="Design" class="reMode_design  reMode_hover">
    <span>Design</span>
</a>

<a href="" title="Design" 
 class="reMode_design  reMode_hover reMode_selected">
    <span>Design</span>
</a>

我在下面尝试过,希望第一个定义能起作用,但事实并非如此。我做错了什么?

CSS

/* do not apply background-color so leave this empty */
.reMode_selected .reMode_hover:hover 
{
}

.reMode_hover:hover 
{
   background-color: #f0ac00;
}

最佳答案

一种方法是使用多类选择器(没有空格,因为它是后代选择器):

.reMode_hover:not(.reMode_selected):hover 
{
   background-color: #f0ac00;
}
<a href="" title="Design" class="reMode_design  reMode_hover">
    <span>Design</span>
</a>

<a href="" title="Design" 
 class="reMode_design  reMode_hover reMode_selected">
    <span>Design</span>
</a>

关于html - 如何在 CSS 选择器中排除特定的类名?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16201948/

相关文章:

jquery - 使用 jQuery 选择空文本输入

html - xml :lang 的 CSS 选择器

html - 选择列表的第一个 child 而不包括孙子

css - 表格内的填充在 Chrome 中不起作用?

javascript - 连续调用 Javascript 函数

css - 是否有 CSS 父级选择器?

html - 在 css 中,如何让一个列表为水平列表,一个列表为垂直列表?

html - 使用 Grid Css 折叠边框?

html - 如何将 anchor 标记与居中的按钮对齐

javascript - 从子元素中删除 Size 和 font-size