| Seems like modern web developers don't use tables as much as they should. I blame the "missing generation" for this. Tables used for layout was considered so bad, that many stopped using tables for tabular data. To explain more, consider this evolution of tables based for layout 1. Early 90s/2000s: Tables used for layout as no good alternatives were available 2. The "popular" kids hated tables for layout and tried to use floats etc. A 3 column layout using floats was considered "the holy grail", because it was so hard to get it to work. Most developers continued using tables until Bootstrap and other frameworks managed to take some of the pain away 3. Flexbox is introduced as an alternative to floats, but with its own issues. 4. CSS grids are finally here, after only 30 years of waiting for it and we can finally get a 3 column layout working without too much dark magic. To me it seems that they years between 2 and 3 was kind of "lost", where developers got the impression that tables were bad even for tabular data. I have seen so many developers display tables as a collection of divs, or just giving up and using a picture of a table instead. The losers are of course accessibility and the semantic web. Now it seem developers are rediscovering tables due to the superior accessibility they provide and they are "allowed" by the hipsters to actually use tables for tabular data again. Next step: Maybe realize that there are other tags than h1 and div? One can only dream. |
Nowdays, with `display: contents` (on the tbody/tr) you can use `display: grid` to do the layout for your table, too, making it easier to make the table responsive.
CSS lets you do other fun things to tables, too. For example https://ffoodd.github.io/chaarts/pie-charts.html uses tables, but does not display like a table.