The :checked pseudo selector is not matched by select options that have the "selected" attribute. The spec clearly states that :checked should match form elements that have the "checked" or "selected" attributes. Test case: http://jsfiddle.net/5dqPv/11/ Tested in webkit nightly.
Your test case doesn't demonstrate the behavior claimed in this bug - the letter-spacing property doesn't apply to option elements even in the absence of a :checked selector. Please provide a test case that demonstrates the behavior.
Ok, I changed the test case to demonstrating it using querySelectorAll http://jsfiddle.net/5dqPv/31/
Please attach your test case to the bug. There is no reason to keep tests on jsfiddle.
Created attachment 98323 [details] test case
Nice test case :) I couldn't find a property that applied to both selected and unselected option elements (e.g. background-color and color apply to the unselected elements but are overridden by the selection highlight).
Created attachment 110499 [details] Patch Option element selected state need to be checked in PseudoChecked, currently HTMLInput elements are checked on their checked state. I guess option elements do require check here if we want them to be considered as checked when it's state is selected.
Comment on attachment 110499 [details] Patch ok
Comment on attachment 110499 [details] Patch Thanks for review. Setting the commit-queue flag.
Comment on attachment 110499 [details] Patch Clearing flags on attachment: 110499 Committed r97224: <http://trac.webkit.org/changeset/97224>
All reviewed patches have been landed. Closing bug.