De plaats van elementen kan worden gespecificeerd met behulp van de eigenschappen top, bottom, left en right. Hoe dat gebeurt wordt bepaald door de eigenschap position
De kop h1 wordt gepositioneerd op 10px van de bovenkant van het venster en op 20px van links.
Bij position: fixed wordt de positie gemeten t.o.v. het venster. (Soms spreekt men preciezer van viewport, het gedeelte van de webpagina dat je op het scherm ziet.)
static | Het element wordt op de gewone manier geplaatst (standaard). De waarden van top, bottom, left, right hebben geen effect. Standaard worden elementen geplaats in de volgorde waarin ze in het document staan.
Een regel worden gevuld van links naar rechts tot deze vol is. Daarna volgt de regel daaronder. Net als bij schrijven. |
fixed | Het element wordt gepositioneerd t.o.v. het venster (de viewport) bij schuiven (scrollen) van de webpagina blijft het gefixeerde element op zijn plaats. De viewport is het gedeelte van de website dat je op het scherm ziet. Ik zeg meestal gewoon 'het venster'. |
absolute | Als bij fixed. Nu wordt gepostioneerd t.o.v. het parent element.
Preciezer gezegd: t.o.v. het eerste niet statische parent-element. De procedure is als volgt: eerst wordt gekeken naar de parent (het omhullende element). Is dat niet relative, absolute of fixed dan kijken we verder bij diens parent. Zo gaan we door tot we een relative, absolute of fixed element vinden. Dat is de referentie. Vinden we geen enkele ancestor die voldoet, dan is de body het referentie-element. Opmerking: Een met |
relative | Bij een met position:relative gepositioneerd element geven top, bottom, left en right, de verschuiving van het element aan t.o.v. de 'oorspronkleijke positie'. De oorspronkelijke plaats blijft leeg. |
initial | Standaard|
inherit |
standaard | static |
vererft | nee |
Je wilt:
Een division met daarin een kop die absoluut gepositioneerd moet zijn t.o.v. de division.
Probleem:
Een absolute element wordt gepositioneerd t.o.v. de eerste parent die niet static is.
En de division is static, dat is de standaard waarde voor elementen.
Tip:
Neem voor de division de stijlregel
De division is nu niet static meer. Verder heeft de stijlregel geen effect, omdat er geen verplaatsing is opgegeven.
Een (h3-)kop 10px van onder en 40px van rechts positioneren in een division. M.b.v. position: absolute.
Html:
Css:
Resultaat:
Zie rechtsonder in dit blok.
Exponenten hoger zetten met behulp van position: relative
Html:
3
Css:
32 + 42 = 52