Markus Franzen: Wo gehören die "" hin?

Hallo!

Vor einigen Tagen habe ich im Chat über das Setzen der Anführungsstriche bei Größenangaben diskutiert.
Ich war bislang immer der Meinung, dass diese nicht gesetzt werden müssen.
Im Chat wurde ich allerdings eines anderen belehrt. Hier nun meine Fragen:

1. Warum muss ich Anführunsstriche setzen?

2. Warum werden z.B. bei Tabellenangaben wie <TABLE WIDTH="100%"             BGCOLOR="#3366FF">  die entsprechenden Angaben in "" gesetzt, aber bei Maßangaben     von Bildern, wie z.B: <IMG src="../src/xyz.jpg" HEIGHT=524 WIDTH=565> werden sie         ausgespart.
    Oder kann/muss ich sie hier auch setzen?

Markus

  1. hi!

    1. Warum muss ich Anführunsstriche setzen?

    Damit der Browser erkennt, wo der Inhalt eines Attributes in Tags beginnt und endet.

    1. Warum werden z.B. bei Tabellenangaben wie <TABLE WIDTH="100%"             BGCOLOR="#3366FF">

    »» die entsprechenden Angaben in "" gesetzt, aber bei Maßangaben von Bildern, wie z.B:

    <IMG src="../src/xyz.jpg" HEIGHT=524 WIDTH=565> werden sie ausgespart.
    Oder kann/muss ich sie hier auch setzen?

    Grundsätzlich kannst du bei allen diesen Angaben Anführungsstriche setzen. Gesetzt werden müssen sie aber nur, wenn Leerzeichen darin vorkommen (IMHO).
    Ich zb. setze immer Anführunszeichen, dann vergesse ich sie auch nirgendwo :)

  2. Hallo Markus,

    1. Warum muss ich Anführunsstriche setzen?
    2. Warum werden z.B. bei Tabellenangaben wie <TABLE WIDTH="100%"             BGCOLOR="#3366FF">  die entsprechenden Angaben in "" gesetzt, aber bei Maßangaben     von Bildern, wie z.B: <IMG src="../src/xyz.jpg" HEIGHT=524 WIDTH=565> werden sie         ausgespart.
          Oder kann/muss ich sie hier auch setzen?

    Ein interssantes Thema mit Historie. Urspruenglich war glaube ich mal vorgesehen, dass alle Wertzuweisungen an Attribute in Anfuehrungszeichen gesetzt werden muessen, einfach damit - wie Frank schon sagt - der Browser weiss, wo die Wertzuweisung beginnt und wo sie endet.
    Da nun aber die meisten Wertzuweisungen keine Leerzeichen enthalten, ist klar, dass alles hinter dem =, was bis zum naechsten Leerzeichen folgt, als Wertzweisung zu interpretieren ist. Die Browser haben es so implementiert, und deshalb werden die Anfuehrungszeichen meistens weggelassen, egal ob width=50, width=80% oder align=center. Respekt herrscht bei sehr variablen Wertzweisungen wie solchen hinter href= oder face=.
    Leider hat das W3-Konsortium im Verlauf der vielen HTML-Specs dazu auch schon dies, dann das gesagt. Deshalb sind mir "Spec-Insistierer" so verhasst, die irgendeine Spec genau lesen und mir dann vorhalten, was da geschrieben steht. Zwei Monate spaeter steht's an gleicher Stelle naemlich wieder anders - das muss (auch zur Ehrenrettung der Browser-Bauer) auch mal gesagt werden.
    Derzeit ist es in gewissenhaften Kreisen "Sitte", alles ausser reinen Zahlen (z.B. border=0) in Anfuehrungszeichen zu setzen. Also auch align="center" oder width="90%".
    Die Browser sind da eigentlich alle ziemlich fehlertolerant - es bleibt letztlich ein beliebtes Glaubenskriegsthema - und deshalb hoere ich jetzt auf damit <g>.

    Viele Gruesse
      Stefan Muenz

    1. Die Browser sind da eigentlich alle ziemlich fehlertolerant - es bleibt letztlich ein beliebtes Glaubenskriegsthema - und deshalb hoere ich jetzt auf damit <g>.

      Glaubenskrieg hin oder her, es ist doch eindeutig aesthetischer und viel elaganter, wenn man grundsaetzlich Attributwerte in "" setzt. Ich lege zumindest auch Wert auf diese "Aeussere", zumal man sich leichter tut bei Editoren mit Syntaxhervorhebung. (da kann ich uebrigens Edit+ empfehlen http://www.editplus.com/)

      1. Hallo Thomas,

        Glaubenskrieg hin oder her, es ist doch eindeutig aesthetischer und viel elaganter, wenn man grundsaetzlich Attributwerte in "" setzt. Ich lege zumindest auch Wert auf diese "Aeussere", zumal man sich leichter tut bei Editoren mit Syntaxhervorhebung.

        Richtig, letztere sind die besten "Erzieher" in dieser Hinsicht. Aber wenn man z.B. eine grosse Datei mit sagen wir 100 KB Text und viel Textformatierung, z.B. Tabellen hat, dann kann man sich sicher einige KB allein durch ohnehin fuer Browser nicht relevante Gaensefuesse sparen. Aber das Syntax-Highlighting von HomeSite 4.0 hat mich schon dazu bewogen, in SELFHTML diverse Attributzuweisungen in "" zu setzen, die vorher nackt waren - da gebe ich Dir voellig Recht...

        Viele Gruesse
          Stefan Muenz

        1. Richtig, letztere sind die besten "Erzieher" in dieser Hinsicht. Aber wenn man z.B. eine grosse Datei mit sagen wir 100 KB Text und viel Textformatierung, z.B. Tabellen hat, dann kann man sich sicher einige KB allein durch ohnehin fuer Browser nicht relevante Gaensefuesse sparen

          Wie reagieren jedoch die unterschiedliche Browser auf diese Aussage? Um auf "Nummer sicher" zu gehen ist es bisher wohl eher sinnvoll auf "einige KB" keine Rücksicht zu nehmen auch wenn es in den meisten Fällen (MSIE/Netscape) keine Rolle spielt.

    2. Hi zusammen!

      Vielen Dank für die rasche Antwort!
      Ich denke, um ganz sicher zu gehen, werde ich in Zukunft sicherheitshalber überall "" setzen.
      Dann komm ich nicht so schnell durcheinander...

      Markus