CSS 1
CSS2.1
CSS3
: hover only a element is available in IE6.
E:empty seems to have some minor bugs in the WebKit core browser.
If the bug persists, you're not sure how to test it.
IE6 does not support. class1{}.class2{} two-class selectors.
IE8 Precautions:
E[ATTR] The selector will not take effect when the value is empty or when it is incorrectly written;
IE8 supports all properties of CSS2.1, supports pseudo-classes, but does not support pseudo-elements.
IE7 compatibility mode in IE8
E[ATTR] and IE8, when the value is empty or write wrong, invalid;
E[attr~=val] The only thing to note here is the value of the attribute, which is case-sensitive;
E[ATTR|=VAL]IE7 has some case-sensitive issues, but it can usually be used normally;
: First-child IE7 will treat a comment or text node as First-child, not just the element is the "child" element. So, if there is a comment or text before the first child element, IE7 will match instead of matching the first child element.
Safari/chrome
Safari3.2 (which in fact dates back to 3.1) has fully supported all CSS selectors.
Safari3.0 basically supports CSS 2 selectors, but does not support CSS3 most of the new selectors, and support for property selectors is not complete.
Safari in the iphone has 3.0 and 3.2 two versions, and support for CSS is consistent with the PC/MAC version.
The Android system comes with a browser that is basically based on the WebKit core, and its support for CSS selectors is being tested.
CSS selector compatibility