Roland,
[...] 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. border:0 ist das ökonomischste, oder nützlichste.
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.
<q cite="http://www.w3.org/TR/REC-xml#sec-origin-goals">
The design goals for XML are:
[...]
6. XML documents should be human-legible and reasonably clear.
[...]
10. Terseness in XML markup is of minimal importance.
</q>
Die Reihenfolge der Fragen, die man sich stellt, ist folgende:
Soll überhaupt ein
Rahmen angezeigt werden?
|
+--------+----------+
| |
Ja Nein
| |
| border:none
| |
Welche Art von Rahmen #
soll angezeigt werden?
|
+--------+--------+
| | |
solid double dotted/dashed/...
| | |
+--------+--------+
|
Wie dick soll der
Rahmen sein?
|
+-------------------+
| ______ |
| Wert |______| |
| ______ |
| Einheit |______| |
| |
+-------------------+
|
#
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, weiterhin gilt es, den Rahmen auszuschalten, nicht einem vorhandenen Rahmen die Größe Null zuzuordnen. 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. Vergleiche die XML-Variante:
Variante 1:
<rahmen>
<!-- implizit: <anzeige>ja</anzeige> -->
<!-- implizit: <stil>durchgehend</stil> -->
<breite>0</breite>
<!-- implizit: <farbe>schwarz</farbe> -->
</rahmen>
Variante 2:
<rahmen>
<anzeige>nein</anzeige>
</rahmen>
Beide Varianten würden ohne Frage auf dasselbe herauskommen, dennoch ist alleinig die zweite Variante logisch ("reasonably clear" bzw. "formal and concise"). Mit border:0 poltert man durch die Hintertür herein, *logisch* wäre hingegen ausschließlich border:none. 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.
Grüße,
Mathias
Remember: KING KONG Died For Your Sins!
"ich belle ich fauche ich keife ich röchle ich knurre ich schreie ich wimmer ich bibber ich zitter ich ICH!"
Naïve Nonsens-Poesïe http://home.t-online.de/home/dj5nu/lit-nonsens.html