Deel 6: The power of design
Web Design
Positioning


Positioning in css
Position
Position is een property die we gebruiken om in te stellen hoe een item zich gedraagt op de webpagina:
- Volgt het item de normale flow van de pagina?
- Houdt het item geen rekening met andere items?
- Scrollt het item mee?
- Blijft het item "plakken" op een bepaalde plek?
Position: static
Position: static
De default instelling van de browser: elk element is statisch.
Het item volgt de normale flow van de html

position: relative
Position: relative
Als een element position: relative krijgt, heeft dit initieel geen invloed op het element.

.green-box {
position: relative;
}Position: relative
Maar we kunnen het element nu verplaatsen met top, bottom, left, right. Het element verplaatst zich t.o.v. zijn originele plaats.

.green-box {
position: relative;
left: 2rem;
top: 4rem;
}
Position: relative
Ookal werd het element verplaatst, de originele ruimte in de flow blijft wel ingenomen. Andere static elementen verschuiven dus niet.

.green-box {
position: relative;
left: 2rem;
top: 4rem;
}
Position: relative
Zelfs als we het element zo verschuiven dat het niet meer zichtbaar is in het browserscherm, blijft de originele ruimte in de flow ingenomen.

.green-box {
position: relative;
left: -200rem;
top: -400rem;
}
position: absolute
position: absolute
Bij position:absolute wordt het element uit de normale flow van het document genomen. Zijn originele plaats blijft ook niet meer behouden.
position:static
position:absolute
position: absolute
Het item positioneert zich nu t.o.v. de html tag (=het browserscherm)
.green-box {
position: absolute;
left: 12rem;
top: 10rem;
}
position: absolute
Het item positioneert zich nu t.o.v. de html tag (=het browserscherm) of de eerste parent met position:relative.
.yellow-box {
position: relative;
}
.green-box {
position: absolute;
left: 2remrem;
top: 2rem;
}
<div class="yellow-box">
<div class="green-box"></div>
</div>relative vs absolute
position:static
position:absolute
position:relative
Voorbeelden van position: absolute


Tags of like-buttons op cards of afbeeldingen

Voorbeelden van position: absolute
Pop-up menu's
position: fixed
Position: fixed

Bij position:fixed blijft het element staan op zijn positie t.o.v. het browservenster. Hij behoudt zijn positie bij het scrollen.
Position: fixed
Wanneer je position:fixed toevoegt, verdwijnt het item uit de flow van de html, m.a.w zijn originele ruimte wordt niet behouden en andere elementen houden er geen rekening mee
navbar met position:static
navbar met position:fixed
position: sticky
Position: sticky
Een element met position:sticky...
- Gedraagt zich eerst relative (staat in de gewone flow)
- maar zodra je voorbij een bepaald scrollpunt komt, wordt het vastgeplakt (sticky) op een positie, net zoals fixed

Position: sticky
.sticky-nav {
position: sticky;
top: 0; /* Blijft plakken aan top van viewport */
background: white;
z-index: 100;
}
.sidebar {
position: sticky;
top: 10rem; /* 10rem van top wanneer sticky */
height: fit-content;
}Overzicht
Overzicht
| Blijft in flow | top/bottom/left/ right | Positioneert ten aanzien van | |
|---|---|---|---|
| static | originele plek in de flow | ||
| relative | originele plek in de flow | ||
| absolute | 1ste niet static parent of body | ||
| sticky | originele plek in de flow + viewport bij scroll | ||
| fixed | viewport |
Overzicht
z-index
z-index
Nu we elementen over andere elementen gaan positioneren, kunnen we ook kiezen welke elementen vanboven liggen met de z-index property
z-index
Hoe hoger de waarde, hoe meer het item naar boven wordt geplaatst. Hoe lager de waarde, hoe verder naar achter.
.orange-box {
z-index: 20;
}
.green-box {
z-index: -2;
}z-index
Z-index werkt niet op static elementen, alleen op items die als position de volgende instelling hebben:
- Relative
- Absolute
- Fixed
- Sticky
z-index
14. Positioning
By Lecturer GDM
14. Positioning
Positioning and z-index
- 175