title: Whitespace in CSS selectors
body: <p>In the selector a space can indicate a descendant. However, I see spaces can also be ignored.</p>
  
  <p>From my testing, here is what I <em>think</em> it means:</p>
  
  <ul>
  <li>Spaces may be used around <code>,</code> and contextual characters (such as <code>+</code> and <code>&gt;</code>).</li>
  <li>Spaces may <em>not</em> be used around pseudo class and element characters (<code>:</code> and <code>::</code>) as well as attribute selectors (<code>[…]</code>).</li>
  <li>Spaces may <em>not</em> be used with class and id characters (<code>.</code> and <code>#</code>).</li>
  <li>Spaces inside a "string" are significant.</li>
  <li>All other spaces are ignored. This includes padding inside an attribute selector.</li>
  </ul>
  
  <p>The question is (a) is this officially correct? and (b) where is this covered?</p>