Da habe ich nichts dafür wenn wir es mit DIV Tags lernen, und im html.de Forum es alle anderst machen.
Du hast recht, wenn Du von Deinen Prüfungen sprichst. Die musst Du wohl so ablegen, wie Du es gelernt hast. Wenn Dir jemand - bewusst oder unbewusst - völligen Schwachsinn beibringt, z.B. dass die Erde eine Scheibe ist, dann wirst Du Dein Diplom nicht bekommen, indem Du behauptest, die Erde sei rund.
Schade daran ist nur, dass Du dann einen Titel bekommst, ohne echte Ahnung zu haben.
Die Schweiz hinkt halt ein wenig hinterher was dem Webdesign angeht.
Das kann ich mir nicht vorstellen, ehrlich gesagt.
Für uns ist das mit den DIV Tags aktuell, für euch (bzw. für die Experten) schon veraltet. Und als DIV-Suppe bezeichnet.
Das, was wir daran bemängeln ist nicht, dass Ihr hinterher hinkt, sondern dass Ihr einfach sinnfreie Sachen macht. "Layout mit div" war nie irgendwo "aktuell", es ist einfach falsch. Da hat mal jemand irgendwas in Umlauf gesetzt, und irgendwer anders hat es falsch aufgefasst und schon hat sich der Unfug verbreitet.
Tatsache ist, dass Layout mit HTML nicht im Sinne von HTML ist. Das hat nichts mit "aktuell" zu tun. Auch damals, als man Tabellenlayout gemacht hat, war HTML nicht fürs Layout gedacht. Mangels CSS hat man aber als Hack HTML dazu benutzt.
Seit der Einführung von CSS kann man HTML nun endlich dem Zweck zuführen, zu dem HTML entwickelt wurde.
Wenn Ihr "Layout mit div" macht, dann ist das kein HTML im Sinne von HTML. Und dafür ein Diplom zu bekommen, ist ungeheuerlich.
Könnt ihr nochmals kontrollieren bitte?
Besser. Aber noch Kleinigkeiten:
- <div> gruppiert Elemente. Wenn Du also in einem <div> nur ein einziges Element hast, kann das <div> auch wegfallen. Das ist dann so überflüssig, wie wenn Du Deine Weihnachtsgeschenke zweimal einpackst.
- In <address> steht immer noch keine Adresse, obwohl es als Adresse ausgezeichnet ist.
Kann mir jemand erklären, oder ein Beispiel zeigen;
Wenn man Layoutelemente nicht mit DIVs einteilt. Wie dann? Wenn es immer wieder heisst DIVs ist falsch, DIV ist veraltet etc.
Also zum einen hast Du geschrieben "keine Tabellen mehr". Dazu wollte ich noch anmerken, dass Tabellen nicht böse sind. Sie haben ihre festgelegte Bedeutung, genauso wie <div>s und werden zu ihrem bestimmten Zweck auch verwendet.
Layout macht man nicht mit div, weil man Layout gar nicht mit HTML macht, div aber HTML ist.
Niemand sagt, "divs sind falsch" und niemand sagt "div ist veraltet". Da hast Du uns gehörig missverstanden.
Man macht Layout einfach weder mit Tabellen, noch mit divs. Sondern mit CSS.
CSS formatiert ja einfach die Elemente, die durch den HTML-Code festgelegt werden. Und mit CSS kann man eben diese Elemente beliebig anordnen.
WELCHE Elemente das sind, hängt aber NICHT VOM LAYOUT ab, sondern VOM INHALT.
HTML dient der LOGISCHEN INHALTSAUSZEICHNUNG, der Struktur, der Semantik.
Das heißt, Du schreibst zuerst Deinen Inhalt und überlegst Dir dann, was er bedeutet. Wo sind Überschriften? Habe ich eine Adresse, welches sind die Textabsätze, wo sind wichtige Textpassagen usw.
Und für alle diese Bedeutungen gibt es in HTML "Tags". Mit diesen Tags zeichnest Du dann Deinen Inhalt aus, d.h. Du gibst dem Inhalt eine Bedeutung.
<div> hat die Bedeutung: Gruppe mehrerer Elemente.
Es ist richtig, dass man die Bedeutung des Inhalts nicht verändert, wenn man eine Gruppe anlegt. Es ist auch richtig, dass man damit aber eine gute Basis schaffen kann für Design/Layout. Aber man layoutet nicht mit ihnen. Man geht nicht her, und teilt die Seite in Bereiche ein, die man dann mit div kennzeichnet und schreibt dann seinen Inhalt rein.
Man schreibt seinen Inhalt, zeichnet ihn semantisch sinnvoll aus, und macht dann mit dem was man hat Layout in CSS. Es kann sinnvoll sein, dann einige Elemente zwecks gemeinsamer Formatierung zu gruppieren. Aber man packt nicht alles einfach in <div>s.
Gern gemachte Fehler sind so Dinge wie:
<div class="ueberschrift">Hallo!</div>
Das ist sinnfrei und macht aus "Hallo!" keine Überschrift. Es ist eine Gruppe, wegen des <div>. Dass das aber logischer Unfug ist, sieht man. Erst mit den Überschrift-Tags, z.B. <h1>Hallo!</h1> wird eine Überschrift daraus. Genauso verfährt man mit allen anderen Tags.
Wichtig ist das für alle Clients, die den HTML-Code analysieren, Suchmaschinen z.B. oder auch Vorlesebrowser. Letztere lesen u.U. Schwachsinn vor, wenn die logische Bedeutung nicht richtig gesetzt ist. Seiten mit Tabellenlayout werden halt so vorgelesen, als würde es sich um tabellarische Daten handeln. Das kann zu bestem Chaos führen. Suchmaschinen bewerten Deine Seite u.U. schlechter, weil sie keine Überschriften und/oder keine TExtabsätze finden.
usw. usf.
Ich glaube als Einführung zum Nachdenken reicht das erstmal.
Möglicherweise ist aber trotzdem noch was unklar, dann fragst Du einfach nach! Löcher mich!
Liebe Grüße,
-Efchen