简体   繁体   English

如何使用CSS将不同的悬停颜色效果应用于不同的Li

[英]How to apply different hover color effect to different li using css

I have created ul inside nav tag so I want to apply different background-color hover effect to different li but hover effect is applied to only anchor tag not complete li. 我在nav标签内创建了ul,因此我想将不同的背景色悬停效果应用于不同的li,但是悬停效果仅应用于锚标签而不是完整的li。

CSS property I have mentioned like this 我这样提到的CSS属性

 .main-menu .acc .fa-home, .main-menu .acc>a:hover { background-color: #689f38; } .main-menu .fa-laptop, .main-menu li>a:hover { background-color: #ed3b3b; } .main-menu .fa-list, .main-menu .has-list>a:hover { background-color: #ef6c00; } 
 <nav class="main-menu"> <ul> <li class="acc"> <a href="#"> <i class="fa fa-home fa-2x"></i> <span class="nav-text"> List One </span> </a> </li> <li class="has-subnav"> <a href="#"> <i class="fa fa-laptop fa-2x"></i> <span class="nav-text"> List Two </span> </a> </li> <li class="has-list"> <a href="#"> <i class="fa fa-list fa-2x"></i> <span class="nav-text"> List Three </span> </a> </li> </ul> </nav> 

Just define :hover to the li element li:hover not li>a:hover 只需将:hover定义为li元素li:hover而不是li>a:hover

 .main-menu .acc .fa-home, .main-menu .acc:hover{ background-color:#689f38; } .main-menu .fa-laptop, .main-menu li:hover{ background-color:#ed3b3b; } .main-menu .fa-list, .main-menu .has-list:hover{ background-color:#ef6c00; } 
  <nav class="main-menu"> <ul> <li class="acc"> <a href="#"> <i class="fa fa-home fa-2x"></i> <span class="nav-text"> List One </span> </a> </li> <li class="has-subnav"> <a href="#"> <i class="fa fa-laptop fa-2x"></i> <span class="nav-text"> List Two </span> </a> </li> <li class="has-list"> <a href="#"> <i class="fa fa-list fa-2x"></i> <span class="nav-text"> List Three </span> </a> </li> </ul> </nav> 

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

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