Für sowas wird man hier gelobt?
Apple technisch mag das Forum ja was drauf haben, aber in SAchen HTML, CSS etc. blicken hier anscheinend nur die wenigsten durch.
Dein Code war vielleicht mal in den 1990 Jahren aktuell.
Ich zähle mal auf:
- Du benutzt ein total veraltetes Tabellenkonstrukt für deine Seite
- Du verwendest iFrames
- Es ist keine Semantik zu erkennen
Wie macht man es also richtig? Vll. sollte ich dazu mal einen Beitrag verfassen, so dass man diesen oben anpinnen kann und in solchen Fällen drauf verlinken kann...
Also fangen wir an:
HTML ist eine Auszeichnungssprache (keine Programmiersprache) und was macht eine Auszeichnungssprache? Genau, sie zeichnet einen Inhalt logisch und sinnvoll aus. Das ganze nennt sich dann Semantik. In meinen Augen ist die Semantik noch viel wichtiger, als die Validität, denn letztere kann man ganz einfach mit einem Validator prüfen und gewährleisten. Um eine korrekte Semantik umzusetzten, muss man allerdings sein eigenes Hirn benutzen.
Bevor ich da allerdings weiter drauf eingehe, darf ich den wichtigsten Aspekt nicht vergessen. HTML ist auschließlich dafür da dem Inhalt eine logische Bedeutung zu geben, so dass auch Browser diesen verstehen können. HTML wird NICHT dazu verwendet irgendwelche Design Akzente zu setzten.
Für das Design einer Website ist einzig und allein CSS zuständig.
Der einzige Grund, dass man früher Layouts über Tabellen gestalltet hat, war die Tatsache, dass es noch kein CSS gab. Man musste sich also irgendwelchem Mitteln behelfen, auch wenn man damit den Sinn von HTML vollkommen zerstört. CSS gibt es allerdings jetzt schon seit mehr als 10 Jahren. Warum also immernoch auf veraltete Techniken gesetzt werden, unter denen ausschließlich die Semantik und meistens auch die Userbility zu leiden haben, weiß ich beim besten Willen nicht.
So viel zum Hintergrund und abschließend gebe ich noch ein paar Beispiele:
Jeder Tag in HTML hat eine semantische Bedeutung und somit auch seine Berechtigung (über b und i lässt sich streiten, dass soll jetzt aber kein Thema sein).
<p> steht für Textabsatz, <h1>-<h6> zeichnen Überschriften der Wichtigkeit nach geordnet aus, <ul> zeichnet ungeordnete Listen aus (z.B. ein Menü), <table> zeichnet tabellarischen Inhalt aus (z.B. die Meisterschaftstabelle in der Bundesliga), <div> hat die semantische Bedeutung "Gruppe".
Und so könnte ich immer weiter machen.
Die Hauptüberschrift einer Seite zeichnet man also so aus:
<h1 id="header">Überschrift</h1>
Den gleichen Effekt hätte <div id="header">Überschrift</div>, aber wo wird hier irgendetwas gruppiert? Man missachtet also jegliche Semantik.
Jetzt fragen sich vielleicht einige, warum man so auf Semantik wertlegen sollte, da das Anzeigen der Seite vom AUssehen her gleich ist. Ich gebe also mal wieder ein paar Beispiele, wo Semantik durcchaus von Bedeutung ist:
Ein blinder Internetuser ist auf sog. Vorlesebrowser angewiesen. Und diese Vorlesebrowser nehmen ihre Informationen aus dem Quellcode. Wenn dieser semantisch korrekt ausgezeichnet ist, dann wird der Blinde keine Probleme haben die Seite nutzen zu können.
Ist allerdings keine Semantik vorhanden, dann wird (Bsp. Seite oben) plötzlich die komplette Seite als Tabelle mit tabellarischen Daten ausgegeben.
Ein weiterer Vorteil der Semantik ist auch die Tatsache, dass z.B. Suchmaschinen die Seite besser einordnen können. Und das hilft natürlich, wenn man möchte, dass seine Seite in Google relativ früh angezeigt wird.
Davon einmal abgesehen räumt es den Quellcode auf und die Wartung wird auch leichter.
Ich bitte also alle angehenden und erfahrenen Webdesigner Abstand von Tabellen, Frames und Div Suppe zu nehmen. Man kann jeden einzelnen Tag mit einer Klasse und/oder einer ID versehen und diesen somit in CSS designen. CSS funktioniert also mit jedem Tag und nicht nur mit dem <div> Tag, der natürlich, vorrausgesetzt man gruppiert mehrere Elemente, einen SInn und eine Daseinsbestätigung hat.
Also, nutzt HTML und CSS, so wie es gedacht war, und helft die Userbility und den Servspaß im Internet mit zu erhöhen
grüße hokage