Skip to content

Commit 6b161f8

Browse files
add CSS color-scheme utilities
Co-authored-by: Luke Warlow <luke@warlow.dev>
1 parent cc8c069 commit 6b161f8

File tree

3 files changed

+73
-0
lines changed

3 files changed

+73
-0
lines changed

packages/tailwindcss/src/__snapshots__/intellisense.test.ts.snap

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -613,6 +613,11 @@ exports[`getClassList 1`] = `
613613
"col-start-9",
614614
"col-start-auto",
615615
"collapse",
616+
"color-scheme-dark",
617+
"color-scheme-dark-only",
618+
"color-scheme-light",
619+
"color-scheme-light-dark",
620+
"color-scheme-light-only",
616621
"columns-1",
617622
"columns-10",
618623
"columns-11",

packages/tailwindcss/src/utilities.test.ts

Lines changed: 59 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10677,6 +10677,65 @@ test('content', () => {
1067710677
expect(run(['content', '-content-["hello_world"]'])).toEqual('')
1067810678
})
1067910679

10680+
test('color-scheme', () => {
10681+
expect(
10682+
run([
10683+
'color-scheme-dark',
10684+
'color-scheme-light',
10685+
'color-scheme-light-dark',
10686+
'color-scheme-dark-only',
10687+
'color-scheme-light-only',
10688+
]),
10689+
).toMatchInlineSnapshot(`
10690+
".color-scheme-dark {
10691+
--lightningcss-light: ;
10692+
--lightningcss-dark: initial;
10693+
color-scheme: dark;
10694+
}
10695+
10696+
.color-scheme-dark-only {
10697+
--lightningcss-light: ;
10698+
--lightningcss-dark: initial;
10699+
color-scheme: dark only;
10700+
}
10701+
10702+
.color-scheme-light {
10703+
--lightningcss-light: initial;
10704+
--lightningcss-dark: ;
10705+
color-scheme: light;
10706+
}
10707+
10708+
.color-scheme-light-dark {
10709+
--lightningcss-light: initial;
10710+
--lightningcss-dark: ;
10711+
color-scheme: light dark;
10712+
}
10713+
10714+
@media (prefers-color-scheme: dark) {
10715+
.color-scheme-light-dark {
10716+
--lightningcss-light: ;
10717+
--lightningcss-dark: initial;
10718+
}
10719+
}
10720+
10721+
.color-scheme-light-only {
10722+
--lightningcss-light: initial;
10723+
--lightningcss-dark: ;
10724+
color-scheme: light only;
10725+
}"
10726+
`)
10727+
expect(
10728+
run([
10729+
'color-scheme',
10730+
'-color-scheme-dark',
10731+
'-color-scheme-light',
10732+
'-color-scheme-light-dark',
10733+
'-color-scheme-dark-only',
10734+
'-color-scheme-light-only',
10735+
]),
10736+
).toEqual('')
10737+
})
10738+
1068010739
test('forced-color-adjust', () => {
1068110740
expect(run(['forced-color-adjust-none', 'forced-color-adjust-auto'])).toMatchInlineSnapshot(`
1068210741
".forced-color-adjust-auto {

packages/tailwindcss/src/utilities.ts

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -813,6 +813,15 @@ export function createUtilities(theme: Theme) {
813813
staticUtility('box-border', [['box-sizing', 'border-box']])
814814
staticUtility('box-content', [['box-sizing', 'content-box']])
815815

816+
/**
817+
* @css `color-scheme`
818+
*/
819+
staticUtility('color-scheme-dark', [['color-scheme', 'dark']])
820+
staticUtility('color-scheme-light', [['color-scheme', 'light']])
821+
staticUtility('color-scheme-light-dark', [['color-scheme', 'light dark']])
822+
staticUtility('color-scheme-dark-only', [['color-scheme', 'dark only']])
823+
staticUtility('color-scheme-light-only', [['color-scheme', 'light only']])
824+
816825
/**
817826
* @css `line-clamp`
818827
*/

0 commit comments

Comments
 (0)