---
title: "Important: Tables are no longer striped by default"
manual: "Frontend Theme for Extension Development"
version: "main"
source: "Changelog/2.0/Important-TablesNoLongerStripedByDefault.rst"
modified: "2026-09-17T04:52:50+00:00"
---

# Important: Tables are no longer striped by default

## Description

A table content element used to stripe every other row, whatever its
**Table class** said. The core's **Striped** therefore changed
nothing, and there was no way to get a table without stripes.

The table component now draws its default rows separated by a hairline only.
Stripes are the modifier `.theme-table--striped`, which the
**Striped** table class selects. The table class offers more looks
beside it - see [Feature: Typography and text components](Feature-TypographyComponents.html#feature-typography-components).

## Impact

Every table content element with the default table class loses its stripes,
and so does any template of a site package that renders
`<table class="theme-table">` without a modifier.

A table that should stay striped selects **Striped** as its table
class, or carries `theme-table--striped` in a template of its own. A
site package that wants every table striped again, without touching the
records, restores the previous default in its own CSS:

```css
.theme-table > tbody > tr:nth-child(even) > * {
    background-color: var(--theme-table-stripe-background);
}
```

The theme uses no cascade layers, so the site package's stylesheet has to be
included after `theme.css`.
