Tabellen

Tabellen

Eenvoudige tabel

NaamDatumLaatst gezien
Project Alpha 2026-01-10
Project Beta 2026-02-18
Project Gamma 2026-03-25

Breder dan de kamer

Een tabel waarvan de kolommen meer vragen dan de pagina heeft, wordt getekend op de benodigde breedte en overstroomt naar wat eromheen scrollt — de zone, de pagina —, nooit met een eigen scrollbar. Gevraagd (`scroll: true`), zoals hier, scrollt het zijwaarts in zijn eigen frame en blijft de pagina eromheen staan: voor een tabel onder andere dingen in een container die niet scrollt. Een plakkerige tabel geeft dit op: een header die aan de pagina vastzit en een frame dat op zichzelf scrollt, kan niet samen bestaan.
Kolom 1Kolom 2Kolom 3Kolom 4Kolom 5Kolom 6Kolom 7Kolom 8Kolom 9Kolom 10Kolom 11Kolom 12
Een waarde die lang genoeg is Een waarde die lang genoeg is Een waarde die lang genoeg is Een waarde die lang genoeg is Een waarde die lang genoeg is Een waarde die lang genoeg is Een waarde die lang genoeg is Een waarde die lang genoeg is Een waarde die lang genoeg is Een waarde die lang genoeg is Een waarde die lang genoeg is Een waarde die lang genoeg is
Een waarde die lang genoeg is Een waarde die lang genoeg is Een waarde die lang genoeg is Een waarde die lang genoeg is Een waarde die lang genoeg is Een waarde die lang genoeg is Een waarde die lang genoeg is Een waarde die lang genoeg is Een waarde die lang genoeg is Een waarde die lang genoeg is Een waarde die lang genoeg is Een waarde die lang genoeg is
Een waarde die lang genoeg is Een waarde die lang genoeg is Een waarde die lang genoeg is Een waarde die lang genoeg is Een waarde die lang genoeg is Een waarde die lang genoeg is Een waarde die lang genoeg is Een waarde die lang genoeg is Een waarde die lang genoeg is Een waarde die lang genoeg is Een waarde die lang genoeg is Een waarde die lang genoeg is

Tabel met acties

BronBijgewerkt opActies
Bron Alpha 2026-01-12
Bron Beta 2026-02-20

Gestreepte rijen, verlicht onder de aanwijzer

BronBijgewerkt opActies
Bron Alpha 2026-01-12
Bron Beta 2026-02-20
Project Alpha 2026-01-10
Project Beta 2026-02-18
Project Gamma 2026-03-25

Rijen die aangevinkt kunnen worden

Een vakje aan het begin van elke rij, één in de kop voor allemaal, en de acties erboven: ze verzenden de aangevinkte rijen naar hun eigen adres, en blijven buiten bereik terwijl er niets is aangevinkt.

0 geselecteerd
BronBijgewerkt opActies
Bron Alpha 2026-01-12
Bron Beta 2026-02-20
Project Alpha 2026-01-10

Bestanden, een totaal, een actie op elke rij

Paden gelezen op hun naam, de mappen ervoor worden vanaf hun start weggelaten. De balk eindigt met hoeveel rijen er zijn, en een actie gemarkeerd met `alle` werkt met niets aangevinkt — het neemt elke rij, en leidt de balk wanneer het de verwachte is.

0 geselecteerd 3 in totaal
Bestand
03-DOCUMENTS/QAL - Syst Document/Obsolète/QAL-D-12-identification-and-validation-of-quality-system-software-v1.md
05-INSTRUCTIONS/RES/RES-I-02-it-access-change-v2.md
README.md

Filters

Een balk met filters aan het hoofd van de tabel, één discreet menu per stuk, die zegt wat het beperkt zodra het dat doet. Op de server leven ze in de query van de pagina — elke optie is een link — en de controller beperkt de rijen daarvan; in vue zijn ze een waarde die aan de pagina wordt gegeven voor zijn api, of toegepast door de tabel op de rijen die het al heeft. Elke optie is een vak — rond voor een keuze uit één — gekleurd door zijn toon wanneer het er een heeft, een status of een categorie.

4 in totaal
NaamEigenaarStatus
Alpha design open
Beta platform closed
Gamma design closed
Delta support open

Sorteren

Een header die sorteert is een link op de server en een knop in vue: oplopend, aflopend, dan terug naar de volgorde die de pagina heeft verklaard, waarop de lijst opent en die zijn pijl vanaf het begin toont. Lege data komen beide keren als laatste, en namen worden vergeleken zoals de taal ze ordent. Hier sorteert de tabel de rijen die hij zelf heeft gekregen; een controller die zijn lijst paginaat leest dezelfde query in plaats daarvan.

5 in totaal
Naam Stad Laatste meting Acties
Adam Petit Angers
Zoé Martin Zürich
Eric Bernard Lyon
Élodie Durand Évry
Basile Leroy Écully

Sorteren in de browser, vanuit twig

`vue: true` geeft dezelfde kolommen en rijen door aan de vue-tweeling: het sorteert en zoekt de hele lijst in de browser, zonder pagina-laden. Voor een lijst die de pagina geheel vasthoudt — een korte, of eentje die geen api bedient.

Acties in een select

Dezelfde balk wanneer er genoeg acties zijn om het te vullen: één wordt gekozen, en vervolgens toegepast.

0 geselecteerd
BronBijgewerkt opActies
Bron Alpha 2026-01-12
Bron Beta 2026-02-20
Project Alpha 2026-01-10

Link- en pictogramcellen

BronStatus
Bron Alpha
Bron Beta

Laden

BronBijgewerkt opActies

Lege staat

BronBijgewerkt opActies
Geen gegevens beschikbaar.

Kolomuitlijning

Naam (links)Status (midden)Aantal (rechts)
Alpha Centered 42.00 €
Beta Centered 128.50 €
Gamma Centered 7.99 €

Codes, cijfers en totalen

`cell: 'code'` stelt een identificatie in de mono face in; `cell: 'number'`, of een `unit`, schrijft een cijfer in de lokale instelling van de pagina. `negative: true` tekent een cijfer onder nul in de fouttoon, zijn minteken zegt het ook. `totals` is een rij die de pagina overdraagt, getekend onder de anderen — de tabel telt niets op, houdt één pagina of een gefilterde lijst. Getekend door de server, dan door vue.

CodeItemNetto aanbodOppervlakte
VS-2041 Atlas 12 18,5 m²
LO-0007 Boréal -4 9 m²
VS-1180 Cyprès 0 6,5 m²
LO-0315 Dune -11 22,5 m²
Totaal -3 56,5 m²

Van markdown

Een tabel geschreven in markdown en door `markdown_ds` gepasseerd: de kolommen, hun uitlijning en de opmaak van elke cel worden uit het document gelezen, en de tabel wordt hier getekend zoals elke andere. `markdown` houdt de eenvoudige `<table>`, voor wat niet een pagina is — een mail, een feed.

NameStatusAmount
Alpha ready 42.00 €
Beta draft 128.50 €
Gamma pending 7.99 €

Groep rijen

Een rij die alleen een groep bevat, is geen rij: het is de lijn tussen twee reeksen ervan, gegeven een woord. Het beslaat de tabel en benoemt wat volgt — dezelfde lezing als een menu scheidingsteken.

NaamDatum
Eerste groep
Project Alpha 2026-01-10
Project Beta 2026-02-18
Tweede groep
Project Gamma 2026-03-25

Statuscellen

Een status is een cirkel, nooit een kleur die iemand heeft gekozen: de cel neemt een type naam, of een type met een aantal en een titel, en tekent het statuspictogram dat de rest van het systeem tekent. Niets om te stylen in de pagina.

PipelineBouwenTestsImplementeren
Project Alpha 42
Project Beta 3
Project Gamma

Plakkerige kop

Een lange tabel wordt kolom voor kolom gelezen net zoveel als rij voor rij. Met `sticky` blijft de kop in beeld terwijl de rijen eronder scrollen; een pagina met iets dat bovenaan is vastgezet, zegt hoe ver naar beneden in `--table-sticky-top`.

#NaamStatus
1 Row 1
2 Row 2
3 Row 3
4 Row 4
5 Row 5
6 Row 6
7 Row 7
8 Row 8
9 Row 9
10 Row 10
11 Row 11
12 Row 12

Een tabel in een eigen zone

Een `zone--table` zone wordt geheel aan de tabel gegeven: wat het bovenaan aandrijft, zijn pagina's aan de voet, uit wat scrollt, en ertussen de bodem van de tabel naar de onderkant van de zone, zelfs voor drie rijen. Elke tabel kan erin, geschreven door de server of door een vue. Met `natural`, zoals de linker, behoudt de tabel de breedte van zijn kolommen, noch uitgerekt noch samengedrukt.

#NaamStatus
1 Row 1
2 Row 2
3 Row 3

Vue entiteit tabel

Vue tabel met selectie

Hetzelfde contract aan de client: de aangevinkte sleutels komen terug via v-model:selected, elke actie wordt uitgezonden als bulk-actie, en een met een adres wordt gepost zoals de server tabel het plaatst. Deze hebben geen, dus de lijn hieronder zegt wat gedaan zou zijn. Drie rijen per pagina, het totaal aan het einde van de balk, en Archiveer alles zonder iets aangevinkt.

Paginering zonder een totaal

Wanneer de API geen totaal retourneert, valt de pager terug op vorige/volgende.

Paginering, getekend door de server

`pagination(page, pages_count)` tekent de pagina's van een lijst als links: elke link behoudt de route en de query van de pagina waar het zich op bevindt — een zoekopdracht, een sortering — en verandert alleen `page`, geteld vanaf 1. De getoonde nummers zijn die van de vue pager: de eerste, de laatste, de huidige en zijn buren. `compact` houdt de vorige en volgende rond het paginanummer; `route` en `params` bladeren door een ander adres.

Vue datumformatters