Websites met stijl

16. Achtergrond-afbeeldingen

In dit hoofdstuk:

De stijlregels van de body

Omdat de body het element is dat de hele website omvat, staan daarin de instellingen die voor de hele website gelden: het lettertype, grootte van de letters, de voorgrondkleur (letterkleur), de achtergrondkleur en de achtergrondafbeelding.

Je gaat nu eerst die stijlregels in het stijlblad zetten. Daarna zullen de verschillende regels worden toegelicht.

Bij de code uit de stijlbladen zet ik steeds de regelnummers. Die moet je niet intikken. De editor doet dat automatisch.

Op zich is de volgorde van de regels in stijlbladen niet erg belangrijk. Maar als je jouw code op dezelfde regels zet als ik, vindt je de regel sneller terug als ik er naar verwijs.

figuur 1 1@import 'https://fonts.googleapis.com/css?family=Open+Sans+Condensed:700|Open+Sans:400,700';
2/* Google fonts 'Open Sans Condensed' (vet) voor de kop en 'Open Sans' (normaal en vet) */
3
4body {
5margin: 0;
6font-family: 'Open Sans', sans-serif;
7font-size: 110%;
8color: hsl(0,0%,40%);
9background-image: url(../img/zand.png);
10background-attachment:fixed;
11}

Toelichting

In de onderstaande experimenten ga je de achtergrond op allerlei manieren aanpassen. Als je klaar bent met experimenteren moet je het stijlblad weer in overeenstemming brengen met figuur 1.

Experiment 1: Een betegelde achtergrond

Gebruik duin.html om de opmaak te bekijken. Dit is de kleinste en overzichtelijkste webpagina. Je kan ook best een van de andere pagina's bekijken, maar met name de video op index.html is storend groot zolang de opmaak daarvan nog niet geregeld is.

Experiment 2: tegelen in één richting

Je kan ook in één richting (horizontaal of verticaal) tegelen; of helemaal niet, dan staat het plaatje er maar één keer. Hieronder staat de mogelijkheden. De uitleg staat op elke regel in het commentaar /* ..... */.

figuur 2a background-repeat:repeat-x; /* herhaalt alleen in horizontale richting */ figuur 2b background-repeat:repeat-y; /* herhaalt alleen in vertictale richting */ figuur 2c background-repeat:no-repeat; /* herhaalt niet - plaatje wordt 1x getoond */ figuur 2d background-repeat:repeat; /* herhaalt horizontaal en verticaal */

Repeat is de standaard methode: als je niets opgeeft wordt er horizontaal én verticaal getegeld.

Experiment 3: De positie van de afbeeldingen

De standaard positie van de achtergrond (de positie als je niets opgeeft) is linksboven. Eén plaatje als achtergrond staat dus linksboven en standaard wordt er van linksboven getegeld.

Met de volgende declaratie kan je de positie instellen: figuur 3 background-position: x y;. Voor de x geef je de horizontale positie op, voor de y de verticale positie. Dit kan op verchillende manieren:

Voor x: left, center of right; voor y: top, center, bottom. Bijvoorbeeld: figuur 3a background-position: right bottom; figuur 3b background-position: center top; figuur 3c background-position: left top; /* standaard positie */

In procenten (0% is links/boven, 50% is midden, 100% is rechts/onder): figuur 3d background-position: 20% 50%; /* 20% van links, 50% van boven */

In px (pixels - beeldpunten) van links/boven: figuur 3e background-position: 50px 10px; /* 50px van links, 10px van boven */

Experiment 4: De grootte van de achtergrondafbeelding

Standaard wordt de achtergrondafbeelding niet vergroot of verkleind. Maar het is sinds css3 mogelijk om de afmetingen in te stellen met de declaratie hieronder:

figuur 4background-size: grootte;

Voor de grootte van de achtergrondafbeelding zijn er de volgende mogelijkheden:

Voorbeelden

figuur 4a background-size: cover /* hele venster gevuld */; figuur 4b background-size: 50% /* er passen 2 afbeeldingen naast elkaar */; figuur 4c background-size: 400px /* afbeelding 400px breed */; figuur 4d background-size: 400px 200px /* afbeelding 400px breed en 200px hoog */;

Experiment 5: Het scrollen van de achtergrond

Met de eigenschap background-attachment kan worden ingesteld of de achtergrond al of niet mee scrollt met de webpagina:

figuur 5a background-attachment: scroll /* achtergrond scrollt mee - standaard waarde */ figuur 5b background-attachment: fixed /* achtergrond scrollt niet mee */

Experiment 6: Een ruitjes-achtergrond

Het bestand ruit.png ziet er uit als figuur 6b. Ik heb het voor de duidelijkheid 5x vergroot: figuur 6b Het is niets anders dan een wit vierkant van 20px bij 20px met daarin een horizontale en een verticale lichtblauwe lijn. Als je die figuur horizontaal en verticaal herhaalt ('tegelt') dan krijg je een ruitjespatroon. De lijnen hoeven niet eens gecentreerd te zijn!
Zo kan je met een heel simpele figuur een achtergrond maken.

Welke achtergrond?

Het is aan jou om te kiezen welke achtergrond je wilt:

figuur 7 1@import 'https://fonts.googleapis.com/css?family=Open+Sans+Condensed:700|Open+Sans:400,700';
2/* Google fonts 'Open Sans Condensed' (vet) voor de kop en 'Open Sans' (normaal en vet) */
3
4body {
5margin: 0;
6font-family: 'Open Sans', sans-serif;
7font-size: 110%;
8color: hsl(0,0%,40%);
9/* zie hoofdstuk 16 - Welke achtergrond */
10/* zie hoofdstuk 16 - Welke achtergrond */
11}

Verder

Samenvatting

Achtergrondkleur

Achtergrond afbeelding

Herhaling
Positie
Grootte
Scrollen