title: What happened to the "Use efficient CSS selectors" rule?
body: <p>There was a recommendation by Google PageSpeed that asked web developers to <a href="http://web.archive.org/web/20120505144628/https://developers.google.com/speed/docs/best-practices/rendering" rel="noreferrer"><strong>Use efficient CSS selectors</strong></a>:</p>
  
  <blockquote>
    <p>Avoiding inefficient key selectors that match large numbers of
    elements can speed up page rendering.  </p>
    
    <p>Details  </p>
    
    <p>As the browser parses HTML, it constructs an internal document tree
    representing all the elements to be displayed. It then matches
    elements to styles specified in various stylesheets, according to the
    standard CSS cascade, inheritance, and ordering rules. In Mozilla's
    implementation (and probably others as well), for each element, the
    CSS engine searches through style rules to find a match. The engine
    evaluates each rule from right to left, starting from the rightmost
    selector (called the "key") and moving through each selector until it
    finds a match or discards the rule. (The "selector" is the document
    element to which the rule should apply.)  </p>
    
    <p>According to this system, the fewer rules the engine has to evaluate
    the better. [...]. After that, for pages that contain large numbers of
    elements and/or large numbers of CSS rules, optimizing the definitions
    of the rules themselves can enhance performance as well. The key to
    optimizing rules lies in defining rules that are as specific as
    possible and that avoid unnecessary redundancy, to allow the style
    engine to quickly find matches without spending time evaluating rules
    that don't apply.</p>
  </blockquote>
  
  <p>This recommendation has been removed from current <a href="https://developers.google.com/speed/docs/insights/rules" rel="noreferrer"><strong>Page Speed Insights rules</strong></a>. Now I am wondering why this rule was removed. Did browsers get efficient at matching CSS rules in the meantime? And is this recommendation valid anymore?</p>