David Karlsson db740fe266 docs: add auto/system theme option to theme toggle (#24519)
> 🤖 Generated with [Claude Code](https://claude.com/claude-code)

## Summary

`theme.js` unconditionally wrote the resolved preference to
`localStorage` on every page load, permanently locking in a concrete
`"light"` or `"dark"` value even for first-time visitors — making it
impossible to track OS preference changes after any site visit. Removed
the unconditional `localStorage.setItem` from `theme.js` so the early
script only reads (never writes); the Alpine.js toggle in `header.html`
now cycles through three states (light → dark → auto), with "auto"
removing the `theme-preference` key and resolving from
`prefers-color-scheme` with a live `matchMedia` change listener so the
theme updates immediately when the OS preference changes. A contrast
icon indicates auto mode; all three icon spans are driven by Alpine
`x-show` directives rather than pure CSS dark-mode classes.

**Verified:** logic matches the standard three-state pattern;
`prefers-color-scheme` media query and `matchMedia` change listener are
the canonical browser APIs for system-preference tracking.
**Checked:** no other files reference `theme-preference` or the theme
toggle; no CSS changes required.

Closes #23177

---------

Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-02 06:19:52 +02:00
2026-03-31 17:35:01 +02:00
2025-01-30 07:54:26 -08:00
2026-03-31 15:20:07 +02:00
2026-01-05 08:34:39 +01:00
2025-07-16 15:13:38 +02:00
2026-01-08 09:38:05 +00:00
2026-03-31 15:20:07 +02:00
2026-03-17 07:32:21 +01:00
2026-03-31 17:35:01 +02:00
2026-03-17 07:32:21 +01:00
2025-04-02 15:46:24 -04:00

Docs @ Docker

Welcome to Docker Documentation


Welcome to the Docker Documentation repository. This is the source for the Docker Docs Website.

Feel free to open pull requests or issues. Our docs are completely open source, and we deeply appreciate contributions from the Docker community!

Provide feedback

Wed love to hear your feedback! To submit feedback:

  • Click New issue on the docs repository, or
  • Click Request changes in the right column of every page on docs.docker.com, or
  • Click Give feedback on every page in the docs.

To get community support, use the Docker Community Slack. Personalized support is available through the Docker Pro, Team, and Business subscriptions. See Docker Pricing for details.

If you have an idea for a new feature or behavior change in a specific aspect of Docker or have found a product bug, file an issue in the project's repository.

Contribute to Docker docs

We welcome contributions! To get started:

Copyright 2013-2026 Docker, Inc., released under the Apache 2.0 license.

Description
No description provided
Readme Apache-2.0 895 MiB
Languages
Markdown 97.2%
HTML 1.8%
CSS 0.4%
JavaScript 0.2%
Go 0.1%
Other 0.1%