Was ist bessere HTML/CSS Stil?
-
Nabend,
mal ne allgemeine HTML-Frage.
Was ist der bessere HTML/CSS-Stil?Nummer 1
<!-- Viel Code --> <p style="color:black;"> Hallo Welt </p> <!-- Mehr Code -->
Nummer 2
<!-- Viel Code --> <p> Hallo Welt </p> <!-- Mehr Code -->
Jetzt mal abgesehen davon, dass das hierbei wohl unlogisch ist,aber ich meine mal so allgemein und auch mit anderen CSS Angaben wie z.B. Textgröße oder Art. Oder wenn man z.B. einen Rahmen macht, welcher Schwarz sein soll - dann muss man die Farbe auch nicht angeben, aber kann man - was ist dann der bessere Stil?
-
Hallo,
Farbangaben im Code selbst solltest du allgemein vermeiden. Deklariere dir dafür lieber eine allgemeine CSS-Klasse:
.blackFont { color: #000; }
<!-- Viel Code --> <p class="blackFont"> Hallo Welt </p> <!-- Mehr Code -->
So hast du die Styledeklarationen in eine zentrale Datei (z.B. template.css) verschoben. Der Output deiner HTML-Seite verringert sich bei umfangreichen Styles, du sparst Traffic und Codewiederholungen. Außerdem ist der Code so (class="blackFont") sehr leicht verständlich!
Um Bezug auf die Frage, ob es Sinn macht, einen schwarzen Text als schwarz zu deklarieren: Ich denke nicht. Du schreibst ja auch nichts wie:
<div style="display: block;"></div> <span style="display: inline;"></span> <div style="background-image: none;"></div>
Du kannst so etwas aber natürlich machen, um die Eigenschaft (schwarzer Text) besonders hervorzuheben. Das ist z.B. sinnvoll, wenn der Text standardmäßig eine andere Farbe hat. Aber allgemein einen schwarzen Text als schwarz zu deklarieren, halte ich für überflüssig.
-
wenn der text schwarz sein soll, dann zeichne ihn als schwarz aus. wenn du layout gestaltest, nimm *nichts* als gegeben an. browser xyz findet es vielleicht lustig, allen seiten per default mit grünem text auf nem bunten hintergrundbild darzustellen. darüber gibt der standard keine vorgaben.
-
árn[y]ék schrieb:
Farbangaben im Code selbst solltest du allgemein vermeiden. Deklariere dir dafür lieber eine allgemeine CSS-Klasse:
.blackFont { color: #000; }
<!-- Viel Code --> <p class="blackFont"> Hallo Welt </p> <!-- Mehr Code -->
So hast du die Styledeklarationen in eine zentrale Datei (z.B. template.css) verschoben. Der Output deiner HTML-Seite verringert sich bei umfangreichen Styles, du sparst Traffic und Codewiederholungen. Außerdem ist der Code so (class="blackFont") sehr leicht verständlich!
Naja, dieses Beispiel ist nicht besonders gut.
Ob du jetzt style="color:black;" oder class="blackFont" schreibst, ist kein großer Unterschied (ich verstehe auch nicht warum letzteres sehr leicht verständlich sein soll und ersteres nicht).
Eine CSS-Klasse zu verwenden ist schon der richtige Ansatz, aber dann sollte der Name eher runningText oä. sein.
-
Ja, dass man bei vielen CSS Eigenschaften Klassen macht ist klar - ging gerade ehr darum, ob man solche (normalerweise) Standardeigenschaften, wie schwarze Farbe angeben soll, oder nicht
Danköö
-
michba schrieb:
Naja, dieses Beispiel ist nicht besonders gut.
Stimmt
michba schrieb:
Ob du jetzt style="color:black;" oder class="blackFont" schreibst, ist kein großer Unterschied (ich verstehe auch nicht warum letzteres sehr leicht verständlich sein soll und ersteres nicht
).
style="color: #000;" finde ich durchaus nicht ganz so leicht zu lesen wie class="blackFont". Gut, bei Schwarz scheint dies unerheblich, aber bei komplizierteren Farben kann (nicht muss) es durchaus seinen Sinn haben.
Warum ich das aber eigentlich geschrieben habe, begründete ich oben auch: Du hast deine Klasse an einer zentralen Stelle, die du nur einmalig ändern brauchst. Was machst du, wenn du alle "floatingText"s nicht mehr als #000 sondern vielleicht als #001 haben möchtest, weil dein Seitenlayout mit einem Schwarz, das einen leichten Blaustich hat, besser aussieht? Mit einer Klasse ist das eine Sache von Sekunden; hast du die Farbe stets inline angegeben, stehst du vor einem schönen Batzen Arbeit.
michba schrieb:
Eine CSS-Klasse zu verwenden ist schon der richtige Ansatz, aber dann sollte der Name eher runningText oä. sein.
Da hast du völlig recht!
Das deckt sich auch mit dem, was ich oben geschrieben habe. Eine Klasse "textBlack", die einen Text nicht als "schwarz" deklariert, wäre nicht sehr sinnvoll.Pille456 schrieb:
Ja, dass man bei vielen CSS Eigenschaften Klassen macht ist klar - ging gerade ehr darum, ob man solche (normalerweise) Standardeigenschaften, wie schwarze Farbe angeben soll, oder nicht
DankööDas ist es ja, was ich meinte. Die Standardschrift hat keine feste Vorgabe. Lynx z.B. zeigt den Text in der schwarzen Kommandozeile gerne weiß an. Deshalb: Wenn du schwarzen Text haben willst, markiere ihn als solchen. Andernfalls lass es sein
-
árn[y]ék schrieb:
Das ist es ja, was ich meinte. Die Standardschrift hat keine feste Vorgabe. Lynx z.B. zeigt den Text in der schwarzen Kommandozeile gerne weiß an. Deshalb: Wenn du schwarzen Text haben willst, markiere ihn als solchen. Andernfalls lass es sein
lol
verarbeitet lynx css?