Hi,
Du brauchst nur noch einen Fallback für Browser, welche die Pseudoklasse
:checked
nicht verstehen. Dieser kann so aussehen, dass du in dem Fall die normalen Checkboxen verwendest.Das ist doch der spannende Teil: Wie sieht dieser Fallback aus? Wie bringt man in Erfahrung, ob der Browser :checked versteht, und zeigt die Checkbox in dem Fall?
Man kann vor den restlichen Checkboxen noch eine zusätzliche, gecheckte platzieren, und dann die folgenden Checkboxen über eine Kombination mit dem General Sibling Combinator ausblenden:
#zusatzcheckbox:checked ~ input[type="checkbox"] { /*verstecken*/ }
Versteht der Browser :checked nicht*, bleiben die restlichen Checkboxen halt sichtbar.
Das mag man** vielleicht auf Grund der extra Checkbox nicht besonders elegant finden - dafür ist es an keine zusätzlichen Techniken wie bspw. JavaScript gebunden; m.E. damit ein vertretbarer Trade-off.
Damit die extra Checkbox keinen Nutzer verwirrt, wenn das in einem Formular eingesetzt und ohne CSS betrachtet würde, könnte man diese Checkbox noch auf readonly setzen, und noch mit einer "bitte nicht beachten" Beschriftung/Label versehen, dann wäre dieser seltene Fall auch noch abgedeckt.
MfG ChrisB
* oder die ~ - aber Browser, die den GSC noch nicht kennen, haben von :checked höchstvermutlich auch noch nichts gehört.
** man in diesem Fall = Markup-Puristen
RGB is totally confusing - I mean, at least #C0FFEE should be brown, right?