CSS bewaar je afzonderlijk
In een tekstverwerker zoals MS Word schrijf je niet alleen je teksten. Je bepaalt ook hoe het document er zal uitzien. Je kan wel gebruik maken van gedefinieerde stijlen, maar toch zitten zowel de inhoud als de stijl van het document in éénzelfde bestand.
Als je de stijl van heel je site wil aanpassen, hoef je slechts één document te openen en te wijzigen!
De opmaak van je website bepaal je in een afzonderlijk document. Dit biedt tal van voordelen. Je kan hetzelfde stijldocument linken aan al je webpagina's, of dit nu gaat om 1, 10 of 5 miljoen webpagina's. Als je de stijl van heel je site wil aanpassen, hoef je slechts één document te openen en te wijzigen!
Hoe ga je te werk?
- Bewaar het stijldocument in een afzonderlijke map. In het onderstaande voorbeeld zie je hoe het document style.css in de map style is bewaard.
- Voeg in de <head>-sectie van al je HTML-documenten de link toe naar dit stijldocument.
<link rel="stylesheet" href="style/style.css">
Stijlregels voor HTML-elementen
In een CSS-document kan je aan HTML-elementen stijlkenmerken toekennen.
Tekstelementen zoals titels, alinea's... kan je dus geen hoogte of breedte geven, maar je kan wel een heleboel andere eigenschappen opmaken:
- lettertype
- lettergrootte
- marge (links, boven, rechts, onder... of allemaal tegelijk)
- kleur
- ...
Uiteraard gebruiken we voor CSS ook vaste benamingen in het Engels. Je kan niet zo maar wat gaan schrijven.
lettertype | font-family
|
lettergrootte
| font-size |
marge (links, boven, rechts, onder... of allemaal tegelijk) | margin (margin-left, margin-top, margin-right, margin-bottom...) |
kleur | color |
uitlijning | text-align |
Deze lijst is lang niet volledig, het is gewoon een overzicht van de belangrijkste stijlregels die we gaan gebruiken.
“Doos”elementen kan je ook nog andere eigenschappen meegeven:
breedte | width |
hoogte | height |
positie (een absolute plaats of een relatieve plaats) tov. andere elementen | position |
plaats op de pagina (links, rechts...) | float |
stapelen (elementen boven elkaar plaatsen) | z-index |
afronding | border-radius |
achtergrondkleur | background-color |
achtergrondafbeelding | Background-image |
marge (links, boven, rechts, onder... of allemaal tegelijk): de afstand van dit element tov andere elementen daar buiten | margin (margin-left, margin-top, margin-right, margin-bottom...) |
padding (links, boven, rechts, onder... of allemaal tegelijk): de afstand van dit element tov andere elementen daar binnen | padding (padding-left, padding-top, paddingright, padding-bottom...) |
rand | border (border-left, border-top, border-right, border-bottom...) |
Nogmaals opgelet: de lijst is ook hier ver van compleet, maar met deze stijlregels kom je al behoordelijk ver!
FIlm: CSS-selecties
HTML-elementen flexibel plaatsen
Met CSS3 (de laatste versie) kan je HTML-elementen heel flexibel plaatsen op je pagina.
HTML-elementen selecteren
In CSS selecteer je een HTML-element. Tussen akkolades schrijf je vervolgens de stijleigenschappen die bij dat element horen
selector{
stijlkenmerk: eigenschap;
stijlkenmerk2:eigenschap;
}
a. HTML-tags selecteren
body{
font-family: Helvetica, Arial, sans-serif;
font-size:1.2em;
}
article{
border:1px solid #cccccc;
padding:2%;
border-radius:6% 12% 5% 0%;
margin-bottom: 20px;
}
h1{
color:deepskyblue;
}
img{
max-width:100%;
}
b. Stijlklassen: een enorme uitbreiding van de mogelijkheden
In het bovenstaande voorbeeld krijgen alle <h1>-titels een blauwe kleur. Alle afbeeldingen krijgen een maximale breedte van 100%. Alle <article>-elementen zien er exact hetzelfde uit op alle pagina's. Misschien wil je sommige artikels wel een andere achtergrondkleur geven.
Dat kan met stijlklassen.
Stel dat je sommige afbeeldingen links wil uitlijnen en andere rechts, dan kennen we (naargelang we dit wensen) een de <img>-elementen in onze HTML-pagina's een klasse waarin we definiëren waar de afbeelding moet terechtkomen.
In HTML zou dit er zo kunnen uitzien:
<!DOCTYPE html>
<html>
<head>
<title>Computerwinkel Heverlee</title>
<link rel="stylesheet" href="style/style.css"/>
</head>
<body>
<article>
<h1>Laptop voor webdesign</h1>
<img src="images/water.jpg" class="fotolinks"/>
<p>Een laptop, schootcomputer of notebook is een draagbare computer die
in principe op de schoot kan worden gebruikt. Laptops worden vooral gebruikt
door mensen die op verschillende locaties met hun computer werken. ...</p>
</article>
<article>
<h1>Laptop voor webdesign 2</h1>
<img src="images/water.jpg" class="fotorechts"/>
<p>Een laptop, schootcomputer of notebook is een draagbare computer die in
principe op de schoot kan worden gebruikt. Laptops worden vooral gebruikt door
mensen die op verschillende locaties met hun computer werken. ...</p>
</article>
</body>
</html>
Je merkt dat de <img>-markeringen een attribuut "class" hebben gekregen:
<img src="images/water.jpg" class="fotolinks"/>
<img src="images/water.jpg" class="fotorechts"/>
De naam van de "class" mag je zelf bedenken. Ik koos hier voor "fotolinks" en "fotorechts".
In het stijlbestand voegen we vervolgens de kenmerken van elke "class" in. Je selecteert een class op de volgende manier: