html - 如何根据悬停效果设置背景颜色,即当鼠标悬停在为类的背景颜色定义的相同 css 定义中的 li 元素上时?

标签 html css

我要申请background-color<li>在悬停时,但悬停效果不适用于我在用于设置元素背景颜色的同一声明 block 中定义的 CSS。如何在不创建其他 CSS 规则的情况下使用逗号分隔的 CSS 实现悬停效果?

.main-menu .acc .fa-home,
.main-menu li:hover>fa-home {
  background-color: #689f38;
}
<link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.css" rel="stylesheet"/>
<nav class="main-menu">
  <ul>
    <li class="acc">
      <a href="#">
        <i class="fa fa-home fa-2x"></i>
        <span class="nav-text">
          Manage Account
        </span>
      </a>
    </li>
  </ul>
</nav>

最佳答案

问题出在 ...li:hover>fa-home { ... 此处,您的目标是标记元素 fa-home ,你没有(你只有那个名字的类)并且还使用规则 > 代表你的标签元素直接在 li 标签之后,但是你有一个标签

.main-menu .acc .fa-home,
.main-menu li:hover {
    background-color:#689f38;
}
<link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.css" rel="stylesheet"/>
<nav class="main-menu">
    <ul>
       <li class="acc">
           <a href="#">
               <i class="fa fa-home fa-2x"></i>
               <span class="nav-text">
                   Manage Account
               </span>
           </a>
       </li>
    </ul>
</nav>

如果你在鼠标悬停时想要改变类.fa-home 元素的背景颜色,那么你应该这样做:

..., .main-menu li:hover .fa-home {
  background-color: red;
}

关于html - 如何根据悬停效果设置背景颜色,即当鼠标悬停在为类的背景颜色定义的相同 css 定义中的 li 元素上时?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52338449/

相关文章:

html - 使用 bootstrap4 的可滚动表体

javascript - 如何让一个div全屏?

javascript - 调试Javascript中的回调函数: second function isn't reached

javascript - Onsen UI - 提交表单问题

php忽略重定向if语句

ios - 带有 Cordova 垂直滚动的 Framework7 在 iOS 上不起作用

css - 背景宽度不是 100%,在水平滚动条处停止

html - 当包含 div 大小的父项发生变化时,如何动态更改 ng-grid 表的大小?

html - 无法将 css 应用于表单

jquery - 表格单元格列之间的相等内部间隙