Html 这个css选择器语法是什么意思?

Html 这个css选择器语法是什么意思?,html,css,Html,Css,我已经看到了语法: ul#nav li a { } 我真的不知道这意味着什么,这和说: #nav ul li a ? 我想我真的不明白在没有空格的id选择器之前有一个元素类型意味着什么…ul#nav li a将选择: ul#nav将适用于 鉴于: #nav ul将适用于中的任何,在ID为“nav”的未排序列表中的列表项内选择锚定 所以 它将匹配第一个锚点,而不是第二个锚点 它与第二个不同,如果它能工作的话,它只会匹配UL有一个ID为“nav”的父级。值得注意的是,虽然标记

我已经看到了语法:

ul#nav li a
{
}
我真的不知道这意味着什么,这和说:

#nav ul li a
?

我想我真的不明白在没有空格的id选择器之前有一个元素类型意味着什么…

ul#nav li a
将选择:

  • ul#nav
    将适用于

      鉴于:


      #nav ul
      将适用于

      中的任何
        ,在ID为“nav”的未排序列表中的列表项内选择锚定

        所以

        
        
        它将匹配第一个锚点,而不是第二个锚点


        它与第二个不同,如果它能工作的话,它只会匹配UL有一个ID为“nav”的父级。

        值得注意的是,虽然
        标记#ID_name
        语法是多余的,因为ID是唯一的,但该语法在处理类时很有用

        ul.nav li{}
        可用于区分同一类的多个标记

        像这样:

          <ul class="nav">
            <li>Stuff</li>
          </ul>
          <ol class="nav">
            <li>First Item</li>
          </ol>
        
        • 东西
      • 第一项
      • ul.nav li{}

        ol.nav li{}
        会影响“第一项”。

        +1因为说它是多余的,因为
        #id
        应该是唯一的,而“应该是”是关键,我在这里看到很多人没有意识到这一点。
        #nav ul
        不会适用于所有
          ,它将适用于任何
          中的每个
          标签#id_name
          肯定也有使用案例,但它们非常罕见,通常是可以避免的。我很高兴你指出了这对于类是多么有用。另外:欢迎来到这个网站!第一个帖子不错。
          a#message.error.active[rel="foobar"]:hover {}
          
          <ul id='nav'>
              <li>
                  <a href='test.com'>Test</a>
              </li>
          <ul>
          <ul>
              <li>
                  <a href='test.com'>Test</a>
              </li>
          <ul>
          
            <ul class="nav">
              <li>Stuff</li>
            </ul>
            <ol class="nav">
              <li>First Item</li>
            </ol>