Hallo!
<header>
<h1>Unsere tolle Site</h1>
<p>Unser toller Slogan</p>
<ul>
<li><a>Kontakt</a></li>
<li><a>Impressum</a></li>
</ul>
</head>
> OK, soweit.
> Man hätte evt. auch Überschrift und Slogan als
> ~~~html
> <hgroup>
> <h1>Unsere tolle Site</h1>
> <h2>Unser toller Slogan</h2>
> </hgroup>
>
auszeichnen können?
Habe ich auch so verstanden. Meine Güte. Hätte man da nicht lieber ein <subtitle>-Element oder sowas einführen können?
Und vor allem das <h>-Element aus XHTML 2, anstatt <h1> mehrdeutig zu machen, mit einer dann völlig blödsinnigen 1 im Namen?
Irgendwo (kann es gerade nicht wiederfinden) habe ich mal gelesen (sinngemäß):
"aside != sidebar".
Von daher erschiene es mir richtiger, die Sidebar erst per <div id="sidebar"> zu setzen und innerhalb dessen für jeden Block ein <aside> anstelle von <section> zu verwenden.
Hmm, "aside" heißt ja sinngemäß sowas wie "nebenbei bemerkt", "ach übrigens", also Text, der nicht ganz so wichtig ist wie der Haupttext und/oder eher am Rande mit dem Thema zu tun hat. "sidebar" assoziiere ich eher damit, dass der Block an der Seite angezeigt wird (rechts oder links) und tendenziell eher hoch als breit ist. So gesehen wäre "sidebar" ein darstellungsbezogener Klassenname (oder ID), den man besser gar nicht verwenden sollte.
Also mich bestärkt alleine dieses kleine und sehr gängige Beispiel in meinem Eindruck, dass es wesentlich schwieriger ist mit HTML5 semantisch korrektes Markup zu schreiben, als mit HTML 4.
Denn ich bin mir ziemlich sicher, dass unsere beiden Entwürfe mit HTML 4 wesentlich ähnlicher gewesen wären. Und wenn noch 5 Leute einen HTML 5 Entwurf erstellen, werden vermutlich noch mind. 2 andere Varianten dabei sein ...!
Ich hoffe derzeit noch, dass das nur an mangelnder Gewöhnung liegt. Der HTML-4-Kram wurde ja schließlich schon seit Jahren durchdiskutiert, so dass sich in vielen Dingen eine Art "common sense" herausgebildet hat. Manche Sachen führen da aber auch immer noch zu Uneinigkeit (z.B. wann <dl> und wann zweispaltige Tabelle? <dl> nur für Glossare vs. <dl> als allgemeine Liste von Key-Value-Paaren und ähnliche Fragen).
Auf der anderen Seite sehe ich auch einiges an Gefrickel in HTML5, insbesondere wenn man interessante Ideen aus XHTML 2 aufgreift, aber sie (anscheinend aus Prinzip?) anders umsetzen will.
href als Universalattribut? => Nein, aber alles darf mit <a> umschlossen werden. (Tabellenzeilen und -zellen eigentlich auch?)
Überschriften als <h>, Hierarchie wird durch Container abgebildet? => Im Prinzip ja, aber mit <h1> statt <h>.
Usw.
Und dann habe ich noch eine ganz andere Frage: Ich habe die letzten Jahre eigentlich immer XHTML 1.0 strict verwendet. Nun erlaubt HTML5 ja einige Dinge (<a> für Blöcke, <noscript> im <head> u.a.), die bisher bei HTML 4 nicht erlaubt waren. Allerdings sind diese dann ja nicht XHTML konform. Andererseits stellt sich ja die Frage, ob (m)ein HTML5 Dokument denn auch unbedingt XHTML konform sein muss. Für die meisten User wahrscheinlich eher nicht (unbedingt). Oder sehe ich da etwas nicht/falsch?
Du kannst einfach HTML5 in XHTML-Syntax schreiben, IMHO ist das auch sinnvoll. Wenn Du ein verarbeitendes Programm erstellst, z.B. einen Bot, kannst Du durchaus einen XML-/XHTML-Parser verwenden. Und fremde Bots sollten grundsätzlich eine gewisse Fehlertoleranz haben, wenn sie aufs Web losgelassen werden - schließlich sind sehr, sehr viele Seiten gar nicht valide, egal nach welcher (X)HTML-Version.
Viele Grüße,
Alexander