Hallo,
Das eine ist eine Pseudoklasse, die dynamisch auf den Zustand eines Elements reagiert - und das andere ein Attributselektor, der nur wirksam ist, wenn das Attribut wirklich im HTML steht.
Verstehe... aber in welchem konkreten Fall macht das einen Unterschied bei disabled, wie kann ein Element :disabled sein, ohne [disabled] zu sein und umgekehrt?
jemand könnte den Zustand "disabled" per Javascript ändern. Das hätte auf [disabled] keinen Einfluss, denn das Attribut bleibt unverändert. Der aktuelle Zustand des Elements ändert sich aber wohl, und :disabled wird diese Modifikation widerspiegeln.
Ein kurzer Test in Chrome hat ergeben, dass folgender Code nach einem Klick den [disabled]-Style annimmt, das Attribut wird also in den HTML-Code eingefügt
<input type="text" onclick="this.disabled = true" name="Test" id="Test" value="Beispiel">
Das entspricht nicht der Theorie, denn der obige Code fügt eben *kein* Attribut hinzu, sondern nur eine Eigenschaft des Element-Objekts.
So long,
Martin
Zwei Freundinnen tratschen: "Du, stell dir vor, die Petra kriegt ein Kind!" - "Ich kann mir schon denken, von wem." - "Dann ruf sie mal schnell an, das würde ihr bestimmt weiterhelfen."
Selfcode: fo:) ch:{ rl:| br:< n4:( ie:| mo:| va:) de:] zu:) fl:{ ss:) ls:µ js:(