Vertikale Navigationen in Contao
Vertikale Navigationen werden seit ein paar Jahren immer weniger in Websites eingesetzt. Gerade als Hauptnavigation findet man sie nur noch selten. Wir wollen in diesem Teil ein Blick auf mögliche Einsatzszenarien werfen und euch zeigen, wie ihr diese in Contao realisieren könnt.
Im letzten Teil des CSS-Kurses über horizontale Navigationen in Contao hatte ich bereits erwähnt, dass vertikale Navigationen in den Anfangszeiten des Webdesign der Standard waren. In den 10 Jahren wurden sie aber mehr und mehr von ihren horizontalen Kollegen abgelöst.
Entschließt sich ein Designer doch dazu, eine vertikale Navigation zu verwenden, dann meist als Unternavigation, die in einer Seitenspalte platziert wird oder als Subnavigation in einer Dropdown-Navigation zum Einsatz kommt. Auch im Footer findet man gerade bei umfangreicheren Websites gerne eine Kombination aus horizontaler und vertikaler Navigation.
Viele vertikale Navigationen – speziell wenn sie als Subnavigationen eingesetzt werden – sind langweilig. Deswegen wollte ich das Thema eigentlich schon überspringen.
Aber als ich mir ein paar unserer letzten Projekte anschaute, fand ich dann doch zwei vertikale Navigationen, die ich so erst gar nicht auf dem Schirm hatte. In den beiden nachfolgenden Beispielen wollen wir euch demonstrieren, dass vertikale Navigationen durchaus sinnvoll sein können und zeigen euch, wie ihr diese in Contao realisieren könnt:
Navigation fixieren
Um eure Navigation zu fixieren, verwenden wir wie im ersten Beispiel die Anweisung position: fixed
und sorgen dafür, dass die Navigation die komplette Höhe des Bildschirms ausnutzt:
.nav--fixed { position: fixed; height: 100%; }
Navigation vertikal zentrieren
Mit dem folgenden CSS-Anweisungen sorgt ihr dafür, dass die <ul> mittig von der Website angezeigt wird:
.nav--fixed ul { position: relative; top: 50%; transform: translateY(-50%); }
Die top
-Anweisung verschiebt die Liste um 50% der verfügbaren Höhe nach unten. Mit transform: translateY(-50%)
wird die eigene Höhe der Liste berücksichtigt und durch den negativen Wert von 50% wieder ausgeglichen. In modernen Browsern ist die Navigation nun perfekt vertikal zentriert (Browser-Prefixe berücksichtigen, im IE ab Version 10).
Text ausblenden und Punkte anzeigen
Den Text blenden wir über font-size: 0
aus, um ihn bei :hover
(und mithilfe einer CSS3-Animation) wieder einblenden zu können. Außerdem geben wir dem Text noch ein wenig Abstand, da wir die Kreise absolut positionieren. Die Kreise fügen wir mithilfe des Pseudo-Elements :before
und durch den Einsatz von border-radius
hinzu:
.nav--fixed li a { font-size: 0; padding-left: 25px; } .nav--fixed li a:before { content: ""; width: 10px; height: 10px; display: inline-block; border-radius: 50%; border: 2px solid currentColor; position: absolute; top: 0; left: 0; vertical-align: middle; }
Text bei :hover einblenden
Zu guter Letzt setzen wir bei :hover
und :focus
die Schriftgröße wieder auf den Ursprungswert:
.nav--fixed li a:hover, .nav--fixed li a:focus { font-size: inherit; }
Mit CSS3-Transitions könnt ihr dann ein wenig Animationen in die Navigation bringen, so wie in unserem Beispiel:
See the Pen Vertikale Navigation für One-Pager in Contao by Dennis Erdmann (@erdmannfreunde) on CodePen.
Der größte Vorteil einer One-Pager-Navigation gegenüber anderen Navigationen ist sicherlich, dass sie nicht notwendig ist. Sie dient dem Nutzer zur besseren Orientierung auf der Website und er kann so gezielt bestimmte Bereiche aufrufen. Wenn er sie allerdings übersieht oder nicht versteht, kann er genauso gut auf der Seite scrollen, um zum Ziel zu kommen. Dementsprechend haben wir auch keine Nachteile von One-Pager-Navigationen finden können.
Unser Fazit:
Vertikale Navigationen sind zwar in den letzten Jahren etwas aus der Mode gekommen, aber als fixierte Variante können sie einer Website nicht nur einen „frischen Anstrich“ geben, sondern auch tatsächlich die Bedienung einer Website verbessern.
Dennoch werden vertikale Navigationen auch bei uns weiterhin eher die Ausnahme, als die Regel sein. Ein großen Comeback der vertikalen Navigation erwarten wir eher nicht.
Kommentare