Positionierung
Ziele
- Ich weiss, wie man mit
position: relative
HTML-Elemente positionieren kann, ohne den Textfluss zu beeinflussen. - Ich weiss, wie man mit
position: absolute
Elemente an einer festen Position innerhalb eines Containers platziert. - Ich kann
position: fixed
anwenden, um Elemente unabhängig vom Scrollen an einer festen Position zu halten.
relative Positionierung: Element ein bisschen verschieben
Angenommen, du hast ein Bild in einem Text:
|
|
In diesem Fall wird das Bild mit aller Wahrscheinlichkeit nicht perfekt im Text ausgerichtet sein. In diesem Beispiel setzen wir es uns zum Ziel, dass wir das Bild ein Stück weit nach unten verschieben. Das kannst du wie folgt bewerkstelligen:
|
|
Mit position: relative
bewirken wir, dass CSS-Properties wie top
, bottom
, left
und right
beachtet werden. Mithilfe der relativen Positionierung können wir dann das Element verschieben, ohne dass es andere Elemente bzw. den Textfluss verändert. Wir haben hier top
verwendet, um oben einen Abstand einzufügen. Würdest du left
verwenden, so würde sich das Element entsprechend nach rechts verschieben. Wichtig zu beachten ist hierbei, dass unter Verwendung von top
, bottom
, left
und right
der Abstand relativ zum Objekt selbst eingefügt wird.
Hierzu findest du eine Aufgabe im Lab.
Absolute Positionierung
Möchtest du ein Element an einer bestimmten Position platzieren, dann kann dir position: absolute
weiterhelfen:
|
|
Bei der Verwendung von position: absolute
wird das Element relativ vom nächsten ebenfalls positionierten Parent-Element positioniert. Gibt es kein solches, wird das Element relativ zum html
-Element positioniert.
Mache deinen Browser mal ein wenig kleiner und beobachte, wie sich die Positionierung verhält, wenn du scrollst.
Möchtest du, dass die Positionierung immer - unabhängig vom Scrollen - gleich ist? Dann versuche mal, das Bild mit position: fixed
zu platzieren.
Hierzu findest du eine Aufgabe im Lab.