Hi Mathias,
Roland,
Damit schießt du aber jetzt endgültig den Vogel ab *g* Irgendwie hat diese Anrede, hm, schwer zu beschreiben, etwas "Väterliches", ist rein gefühlsmäßig ein freundschaftlicher Rempler in's Kreuz bei gleichzeitiger, liebevoller Zurechtrückung des frischgewaschenen Scheitels. "Sohnemann", voll Stolz, sprach er... Aber ich mag's puristisch, so werden Klassiker geboren :)
[...] obwohl mir als Geizkragen border:0 (was am vernünftigsten wäre) natürlich viel sympathischer ist.
Warum? border:none ist IMHO das logischste, oder meinetwegen auch vernünftigste.
ACK
border:0 ist das ökonomischste, oder nützlichste.
ACK, da sich der "Geizkragen" auf die Arbeit im Editor bezog.
Wenn man jedoch bezüglich CSS-Codegestaltung mit Nützlichkeit argumentiert, dann darf man bei HTML nicht mit den Vorteilen von semantischem Hypertext argumentieren, denn ökonomisch wäre der Verzicht auf aussagereiches strukturierendes Markup.
Hm, das hängt dann doch davon ab, wie man "Ökonomie" definiert. Am Transfervolumen sicht nicht, im Sinne einer möglichst hohen Benutzbarkeit ist sparsames Markup höchst ineffizient. Wobei sich der zusätzliche Code durch Verwendung eines Layouts, das weitreichende Benutzbarkeit erst ermöglicht (CSS) arg in Grenzen hält, meist kommt man sogar mit weniger aus.
- XML documents should be human-legible and reasonably clear.
- Terseness in XML markup is of minimal importance.
Wir sind einer Meinung.
Die Reihenfolge der Fragen, die man sich stellt, ist folgende:
[...]
Im Grunde korrekt, aber wie arbeiten Browser intern? Ich kann mir gut vorstellen, dass bei der verkürzten Schreibweise "border:" die Werte "none" und "0" gleichwertig eine Abbruchbedingung darstellen. Tja, bei Mozilla könnte man eventuell im Code nachsehen. Nein, ich nicht ;)
Die generell Anzeige des Rahmens (aktiviert/deaktiviert) wird logischerweise über den border-style geregelt, deshalb ist border:0px solid gleich zweifach "unnatürlich", denn Null (Nichts) hat keine Einheit,
Sagte ich bereits, ja.
weiterhin gilt es, den Rahmen auszuschalten, nicht einem vorhandenen Rahmen die Größe Null zuzuordnen.
Auch logisch, aber wie sieht's bei verkürzter Notation aus? Ich definiere ja weder -style noch -color, sondern lediglich -width:0. Ein hochoptimierte Engine *muss* hier IMHO abbrechen, wenn der Selektor geschlossen wird. Aber "0" mag die zweite Abbruchbedingung sein, ok ;)
Aus diesem Grund ist auch border:0 irreführend, da eine Rahmenbreite border-width für einen nicht vorhandenen Rahmen vergeben wird, es wird also vermutet, dass der Rahmen aktiviert ist, um im Nachhinein im logisch dritten Schritt des Flussdiagramms Größen zu vergeben, welche unnötig wären, wenn man im ersten Schritt die Anzeige des Rahmens unterbunden hätte.
Das mag in einem Flussdiagram korrekt sein, in der Praxis ist es das eventuell nicht. Ich weiß es nicht. Selbst wenn, wäre der effektive "Zeitverlust" zu vernachlässigen. Aber darum geht's hier nicht.
Vergleiche die XML-Variante:
[...]
Auch hier hast du im Grunde Recht, aber es ist durchaus erlaubt, die Definitionen des Rahmens in beliebiger Reihenfolge zu notieren, was den ganzen Ablauf über den Haufen wirft. Wir sprechen hier vom worst case, ich weiß. Aber wie sieht's aus, wenn ich
border-style:none solid solid none;
border-width:1px;
mit
border-style:solid;
border-width:0 1px 1px 0;
vergleiche? Im Endeffekt "kostet" beides das gleiche.
Beide Varianten würden ohne Frage auf dasselbe herauskommen, dennoch ist alleinig die zweite Variante logisch ("reasonably clear" bzw. "formal and concise").
Nochmal: ja
Mit border:0 poltert man durch die Hintertür herein, *logisch* wäre hingegen ausschließlich border:none.
Einmal noch: ACK
Abstrahiert gesehen wäre sogar border:none auch die ökonomischere Variante, da eine interpreterende Software die Abarbeitung der Rahmendeklaration nach anzeige=nein beenden könnte.
Kann sie bei border:0 auch - und ich glaube, die Browser machen es auch. Egal, aus Rücksicht auf Netscape 4 (ich habe von Bugs in dieser Richtung gehört), werde ich auf "none" umstellen, wenn auch ungern. Du darfst mir widersprechend zustimmen ;)
LG Roland
Warum schreibst *DU* keinen Beitrag? Fauler Sack. Konsument!
http://aktuell.de.selfhtml.org/tippstricks/beitrag.htm