改变父李的颜色>鼠标悬停在li child ul上时的跨度

时间:2013-08-07 11:04:17

标签: html css css-selectors

当鼠标悬停在li子ul上时,是否可以更改parent li span的颜色。 (只有CSS)

HTML:

  <ul class="menu">
    <li><a href="#"><i class="icon-list"></i> <span>Home</span></a></li>
    <li><a href="#"><i class="icon-th"></i> <span>test-menu</span></a>
      <ul>
        <li><a href="#"><i class="icon-windows"></i> list-1</a></li>
        <li><a href="#"><i class="icon-windows"></i> list-3</a></li>
        <li><a href="#"><i class="icon-windows"></i> list-2</a></li>
      </ul>
    </li>
  </ul>

Css:

.menu > li > a:hover > span {
  color:red;
}

我试过了:

.menu > li > a > span + ul:hover {
  color:red;
}

小提琴:http://jsfiddle.net/xk4Ph/1/

2 个答案:

答案 0 :(得分:8)

这可以仅使用CSS来完成,因为ulli的一个孩子...... working jsFiddle

使用以下选择器:

.menu > li:hover > a > span

:hover而不是li

上使用a

答案 1 :(得分:0)

您可以为李添加课程 <li class="test"><a href="#"><i class="icon-windows" ></i> list-1</a></li> 并编辑你的CSS: .test a:hover{ color: #000000; }