0

使用 Wordpress 菜单“builder”,我得到以下代码:

  //Pseaudo code

  <ul id="main-menu-main">
    <li class="menu-item"><a></a></li>
    <li class="menu-item current-menu-ancestor">
      <a></a>
      <ul class="sub-menu">
        <li class="menu-item"><a></a></li>
        <li class="menu-item current-menu-item"><a></a></li>
      </ul>
    </li>
  </ul>


  // and I use the following CSS 
  #menu-main-menu a:hover { text-decoration: underline; }
  #menu-main-menu .current-menu-ancestor a { text-decoration: underline; }

我最后一行 css 的问题是下面的所有a元素current-menu-ancestor都带有下划线。我只希望链接中current-menu-ancestor带有下划线。

我认为这应该很简单,但是现在我的头没有集中:-/

父/子的完整代码如下所示:

<ul id="menu-main-menu" class="menu">
  <li id="menu-item-401" class="menu-item-first menu-item menu-item-type-post_type menu-item-object-page current-page-ancestor current-menu-ancestor current-menu-parent current-page-parent current_page_parent current_page_ancestor menu-item-401">
  <a>menu 1</a>    
  <ul class="sub-menu">
    <li id="menu-item-444" class="menu-item menu-item-type-post_type menu-item-object-page current-menu-item page_item page-item-415 current_page_item menu-item-444">
    <a> sub 1</a>
    </li>
  </ul>
</li>

4

2 回答 2

2

使用以下 CSS 片段:

#menu-main-menu .current-menu-ancestor > a { text-decoration: underline; }

>是“子组合器”,只会选择其左侧选择器的直接子代。

请参阅此处了解子选择器和同级选择器的出色汇总。

于 2012-04-10T11:25:47.833 回答
1

如果你想直接在.current-menu-ancestor上进行文本装饰,那么可以这样写:child

#menu-main-menu .current-menu-ancestor > a { text-decoration: underline; }
于 2012-04-10T11:25:59.833 回答