Hallo
Ich weiß nicht, wie weit dich die teilweise sehr ausführlichen Antworten und Ergänzungen der anderen Teilnehmer gebracht haben. Rolf hat offensichtlich eine Zusammenfassung der Argumente als Beispielcode bereitgestellt. Ich versuche dennoch, auf einzelne deiner Fragen, auf die ich in den anderen Beiträgen keine offensichtlichen Antworten gesehen habe, einzugehen.
Die Endung
.html
lässt mich statische Seiten vermuten. Ist diese Annahme korrekt?Jawohl. Es handelt sich nicht um eine dynamische, damit also um eine statische Seite
Gut.
Entschuldige Auge, Du hast offensichtlich verstanden, was zu tun ist, aber ich kann Dir noch nicht folgen.
Ich versuche mal mit meinen Worten wiederzugeben, was ich (glaube) verstanden zu haben.
- CSS ist eigentlich nicht das Mittel der Wahl (für meinen Fall), aber in Verbindung mit Änderungen bei den Links im HTML und Erweiterungen im CSS würde es funktionieren.
CSS ist sehr wohl das Mittel der Wahl. Allerdings basiert „das Funktionieren“ von CSS nur im Zusammenspiel mit HTML und eventuell weiteren eingesetzten, den HTML-Output manipulierenden Techniken. Zudem muss das HTML so strukturiert sein, dass CSS seine Möglichkeiten ausspielen kann.
- Da ich eine statische Seite betreibe, nehme ich Änderungen im HTML vor.
Korrekt.
Aber folgendes ist mir unklar:
- Was sind "echte Seiten" und wie notiere ich deren Formatierungen?
Da habe ich mich wohl etwas unglücklich ausgedrückt. Es geht ja auch nicht um „echte Seiten“, sondern es ging mir um Links (<a>
) mit href-Attributen zu Linkzielen in selben Dokument (zu Sprungankern/Seitenabschnitten) oder zu anderen Dokumenten), die ich zu stark verkürzend als „echte Links“ bezeichnet habe. Dazu im Gegensatz wären Links ohne href-Attribut, wie ich sie vorschlug.
Die Diskussion ist ja mittlerweile weiter und Gunnar empfiehlt (mit seinen auf mehrere Beiträge verteilten Argumenten) richtigerweise, in der Hauptnavigation dem Link zur gegenwärtig geladenen Seite als Linkziel den Hauptinhalt zu verpassen. Somit hat er ein Linkziel und wird also in allen Zugriffsarten auf die Seite auch als Link erkannt.
Damit hat sich auch das Thema Link ohne href („unechter Link“) und Links mit href („echte Links“) erledigt.
- Ich muss vermutlich im CSS neue "Klassen" definieren? Wie das korrekt geht, weiß ich aber ehrlich gesagt, nicht.
Abgesehen von der Tatsache, dass du zur Erfüllung der aktuellen Aufgabe keine weiteren Klassen definieren musst, sind Klassen im HTML einfach nur im Attribut class
eines Elements zu notieren. Sollten es mehrere Klassen sein, die einem Element zugewiesen werden, sind diese durch Leerzeichen getrennt in einem class-Attribut zu notieren (zum Beispiel <div class="produkt variante">…</div>
).
Ich definiere eine CSS-Klasse als so etwas:
Die Klasse selbst definierst du so nicht, aber die Regeln der Eigenschaften für Elemente der Klasse .center
definierst du genau so.
.center { max-width: 840px; margin: auto; }
Allerdings sollte sich die Benennung der Klasse nicht nach deren gegenwärtiger Wunscherscheinung richten. Irgendwann soll das entsprechende Element (body
?) nicht mehr zentriert dargestellt werden und dann fängst du an, in allen betroffenen HTML-Dokumenten den Namen der Klasse zu ändern, weil er nicht mehr passt oder du lässt den Namen, wie er ist und wunderst dich ein paar Monate später über den Namen, der nichts mehr mit der realen Darstellung zu tun hat – geschweige denn, warum das nicht zusammenpasst. Dass du die in vielen Fällen nicht brauchst – body
kannst du auch per body {}
selektieren – sei jetzt mal dahingestellt. Elemente lassen sich ja auf vielerlei Art per CSS selektieren und Klassen sind nicht nur dazu da, Elemente per CSS selektierbar zu machen. Sie dienen auch dazu, gleichartige Elemente per JavaScript zu selektieren.
Da habe ich mich korrekt ausgedrückt?
Soweit ja.
Tschö, Auge
„Habe ich mir das nur eingebildet, oder kann der kleine Hund wirklich sprechen?“ fragte Schnapper. „Er behauptet, nicht dazu imstande zu sein“ erwiderte Victor. Schnapper zögerte (…) „Nun …“ sagte er schließlich, „ich schätze, er muss es am besten wissen.“ Terry Prattchett, Voll im Bilde