0

最初の項目を除いて、ホバー時にリスト項目を強調表示しようとしています。

これはhtmlです:

  ...
  <ul class="topmenulist">
  <li><a href="#" class="active" >Home</a></li>
  <li><a href="#" class="notactive" >What we do</a></li>
  <li><a href="#" class="notactive" >Projects</a></li>
  <li><a href="#" class="notactive" >Contact</a></li>
  </ul>
  ...

これは動作しません:

  .notactive.topmenulist li:hover{ 
  background-color: #EAEAEA;
  }

これは機能しますが、私が望まない最初のものにも適用されます:

  .topmenulist li:hover{ 
  background-color: #EAEAEA;
   }

ありがとう

4

1 に答える 1

2
.topmenulist li:hover a:not(.active) {
    background-color: #EAEAEA;
}

jsフィドル

またはより簡単に:

.topmenulist li:hover a.notactive {
    background-color: #EAEAEA;
}

jsフィドル

編集:()に適用する必要があるすべてliを強調表示したい場合:.noactive:hoverul.topmenulist

.topmenulist:hover li a.notactive {
    background-color: #EAEAEA;
}

jsフィドル

于 2013-06-23T10:50:00.657 に答える