CSS opmaak
Home

CSS opmaak

CSS opmaak

Heel wat eigenschappen om een tabel op te maken hebben we al gezien.

Probleem

Welke stijlregels heb je nodig om een tabel weer te gegeven zoals een desktop spreadsheet?

Design

1. We vertrekken van de tabel van de Jommeke's strips.

2. Voeg een klasse eigenschap toe aan de html tabel:

<table class="spreadsheet">
    <caption>
        Jommeke strips
    </caption>
    <tr>
        <th scope="col">Nummer</th>
        <th scope="col">Titel</th>
        <th scope="col">Kaft</th>
        <th scope="col">Prijs</th>
    </tr>

3. Voeg eventueel een referentie toe naar het externe CSS bestand.

4. We maken de tabel op in zijn geheel. Om de tabel van de klasse spreadsheet te selecteren nemen we de naam van het element gevolgd door een punt en de klassennaam, zonder spatie er tussen. We beginnen met een rand te tekenen rond de cellen en we stellen de border-collapse eigenschap in:

table.spreadsheet {
    border: 1px solid #a6aac6;
    border-collapse: collapse;
}

Met de border eigenschap tekenen we een rand de buitenkant van de tabel. De border-collapse verwijdert witruimte tussen de cellen van de tabel.

5. Vervolgens kijken we naar de cellen van de tabel:

table.spreadsheet td {
    border: 1px solid #a6aac6;
    text-align: right;
    padding: 0.2em;
}

Hiermee voegen we een rand aan de cellen toe. Met text-align wordt de inhoud rechts uitgelijnd. Dat geeft dit als resultaat:

See the Pen Multimedia - Tabel - CSS opmaak A by Jef Inghelbrecht (@jef) on CodePen.

6. Je ziet dat de th elementen nog geen rand hebben. Dat gaan we nu doen. We gebruiken een donkerder kleur voor deze rand en ook een achtergrondkleur om te benadrukken dat ze koppen in plaats van gewone cellen zijn:

table.spreadsheet th {
    border: 1px solid #828282;
    background-color: #cbcbcb;
    font-weight: bold;
    text-align: center;
    padding:  0.2em;
}

7. Tenslotte stijlen we ook de tabeltitel om die visueel één te maken met de rest van de tabel. De tabeltitel plaats ik overigens onderaan:

table.spreadsheet caption {
    font-size: larger;
    font-weight: bold;
    background-color: #bcbcbc;
    color:  #111;
    padding:  0.4em 0 0.4em 0;
    caption-side: bottom;
}

Met dit als resultaat:

See the Pen Multimedia - Tabel - CSS opmaak B by Jef Inghelbrecht (@jef) on CodePen.

JI
2017-01-08 16:28:25