代码之家  ›  专栏  ›  技术社区  ›  Michael Mao

缩短逗号分隔的CSS选择器

  •  7
  • Michael Mao  · 技术社区  · 14 年前

    也许这个问题的标题很模糊,我真正的意思是:

    #footer_list li a:link, #footer_list li a:visited
    {
        blah balh blah
    }
    

    CSS中这两个元素有快捷方式吗?因此CSS选择器可以缩短

    3 回复  |  直到 11 年前
        1
  •  5
  •   Russell Dias    14 年前

    当然。如果你给他们各自的类/标识名。但那是不必要的。你的代码是完全可以接受的,就像CSS一样 层叠样式表,规则基本上层叠下来。

        2
  •  1
  •   BoltClock    14 年前

    你的代码很好。我一直在用这样的选择器设计我的网站,它没有困扰我和浏览器。

    LESS 提供嵌套规则,以便执行以下操作:

    #footer_list li {
        a:link {
            /* Styles for normal links */
        }
        a:visited {
            /* Styles for visited links */
        }
    }
    

    好吧,我不确定这会有什么不同,但我肯定浏览器会对它有不同的处理方式:

    #footer_list li a {
        /* Styles */
    }
    

    然后可以放置其他 a 带类或 a:hover a:active 低于这一点,他们将工作时,适用的。

        3
  •  0
  •   robertc    14 年前

    你有链接吗 #footer_list 不在里面 li

    我想象你的标记中有这样的东西:

    <div id="footer">
        <p>&copy; me 2010</p>
        <ul id="footer_list">
            <li><a href="/home">Home</a></li>
            <li><a href="/contact">Contact</a></li>
            <li>....
        </ul>
        <p>Some other text...</p>
    </div>
    

    在这种情况下,您的规则只需要:

    #footer a:link, #footer a:visited
    

    如果您有(或以后可能会有)在 ul 如果你想改变风格,你可以:

    #footer_list a:link, #footer_list a:visited