v149 · CSS · UA Stylesheet

Dark Mode Tables

The most visible impact of Chrome 149's UA fix is dark mode. Before, tables had gray borders even on dark backgrounds — because the UA's border-color: gray overrode the cascade. Now borders inherit from color, giving correct contrast in both light and dark themes without extra CSS.

When a page switches to dark mode via prefers-color-scheme: dark, the author typically sets color: #e2e8f0 and background: #0f172a. In Chrome 149+, table borders inherit the light color — giving correct contrast on the dark background. Before Chrome 149, borders stayed gray (poor contrast on dark backgrounds).
Light mode — both same (gray vs dark)
color: #1a1a1a (dark text)
NameValueStatus
Alpha100Active
Beta250Pending
Chrome 149+: border inherits #1a1a1a ✓ visible on white bg
Dark mode — the big difference
color: #e2e8f0 (light text on dark bg)
NameValueStatus
Alpha100Active
Beta250Pending
Chrome 149+: border inherits #e2e8f0 ✓ visible on dark bg
Light mode — pre-Chrome 149 bug
UA forces gray — OK on white bg but wrong cascade
NameValueStatus
Alpha100Active
Beta250Pending
Border: gray (UA override) — still visible on white, but ignores cascade
Dark mode — pre-Chrome 149 bug
UA forces gray — poor contrast on dark background
NameValueStatus
Alpha100Active
Beta250Pending
Border: gray (UA override) on #0f172a✗ low contrast, barely visible
Live simulation: toggle between light/dark + old/new UA
MetricMonTueWedTotal
Signups142198221561
Conversions385267157
Revenue$1,240$1,890$2,310$5,440

see also

implementation reference

Need the exact API surface, compatibility boundaries, errors, lifecycle, and source links? Read the matching gendn reference ↗