html - 如何选择这个一般的 sibling ?

标签 html css

我只想选择 .ul-two li a。但是当我用这个选择器 .ul-two li > a 设置样式时,这也会影响 .ul-three a。我该怎么做?

<ul class="ul-one">
  <li>List 1
    <a href="#">dropdown 1</a>
    <ul class="ul-two">
      <li>lorem 2
        <a href="#">I want to only select this link</a>
        <ul class="ul-three">
          <li>lorem 2
            <a href="#">dropdown 3</a>
          </li>
        </ul>
      </li>
      <li>Lorem 2 2</li>
    </ul>
  </li>
</ul>

最佳答案

改用 .ul-two > li > a:

.ul-two > li >a {
  color: red;
}
<ul class="ul-one">
  <li>List 1
    <a href="#">dropdown 1</a>
    <ul class="ul-two">
      <li>lorem 2
        <a href="#">I want to only selected this link</a>
        <ul class="ul-three">
          <li>lorem 2
            <a href="#">dropdown 3</a>
          </li>
        </ul>
      </li>
      <li>Lorem 2 2</li>
    </ul>
  </li>
</ul>

您使用的 .ul-two li > a 意味着选择作为列表项子项的任何 anchor ,该列表项是后代(不仅仅是任何无序列表的 child )。通过在无序列表和列表项 .ul-two > li > a 之间添加子选择器 >,您将后代仅限于子项。

关于html - 如何选择这个一般的 sibling ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45508427/

相关文章:

HTML 超链接在导航栏中不起作用

javascript - 使用 javascript 更改为固定时背景大小会发生变化

html - 了解 div 的行为和

javascript - 由于滚动菜单消失,使用 flexbox 的固定元素在 iPhone 移动 Safari 上重新定位

css - Sencha 触摸 : Change text color of a component

html - bootstrap 3 多列响应式轮播

html - 分离顶部导航栏和侧边导航栏

Html 表格 - 单元格中的表格

javascript - 用户设置下拉菜单

html - IIS 7 问题显示 :inline?