# Dark Mode
Learn how to use Tailwind's dark mode feature for your Skeleton project.
{
Skeleton makes use of{' '}
Tailwind's Dark Mode
{' '}
to enable multiple strategies to control the overall app or page mode, as well as{' '}
Color Scheme
{' '}
to selectively toggle light or dark interfaces at any scope.
}
## Dark Mode
Tailwind [multiple strategies](https://tailwindcss.com/docs/dark-mode) for configuring Dark Mode.
### Media Strategy
Enable by default. Uses CSS's [prefers-color-scheme](https://developer.mozilla.org/en-US/docs/Web/CSS/@media/prefers-color-scheme) and sets the active mode based on operating system settings.
### Selector Strategy
Activates dark mode by adding or removing the `.dark` class to your application's `` element.
```css title="app.css"
@custom-variant dark (&:where(.dark, .dark *));
```
```html title="app.html"
...
```
### Data Attribute Strategy
Uses a data attribute instead of a class to activate dark mode.
```css title="app.css"
@custom-variant dark (&:where([data-mode=dark], [data-mode=dark] *));
```
```html title="app.html"
...
```
### Using the Dark Variant
Apply a base style, then with Tailwind's `dark:` variant.
```html title="app.html"
...
```
---
## Color Scheme
Skeleton now supports Tailwind's [Color Scheme](https://tailwindcss.com/docs/color-scheme) feature, which enables toggling light or dark interfaces at any scope. By default, the scheme matches the current Dark Mode setting. This feature is enabled by [Color Pairings](/docs/design/colors#color-pairings), which implement the native CSS property [light-dark](https://developer.mozilla.org/en-US/docs/Web/CSS/color_value/light-dark).
```html
Light or Dark
Always Light Scheme
Always Dark Scheme
```
---
## Light Switch
Legacy versions of Skeleton offer a unique Light Switch component for controlling the Dark Mode `selector` strategy. Unfortunately this is no longer available due to the number of permutations required per framework and required feature capabilities, including:
- Supporting one or more combinations of Dark Mode strategies.
- Supporting the unique APIs of each meta-framework.
- Handling state and persistence; ex: local vs remote vs account-based storage
We now recommend you generate your own component following [Tailwind's best practices](https://tailwindcss.com/docs/dark-mode). To help you get started, we've provided a Cookbook recipe covering the basics.
Light Switch Recipe →