Skip to content

Commit ed5e2c4

Browse files
committed
Add prefers-contrast variants
1 parent 4e21639 commit ed5e2c4

File tree

4 files changed

+22
-0
lines changed

4 files changed

+22
-0
lines changed

src/corePlugins.js

+5
Original file line numberDiff line numberDiff line change
@@ -163,6 +163,11 @@ export let variantPlugins = {
163163
addVariant(screen, `@media ${query}`)
164164
}
165165
},
166+
167+
prefersContrastVariants: ({ addVariant }) => {
168+
addVariant('contrast-more', '@media (prefers-contrast: more)')
169+
addVariant('contrast-less', '@media (prefers-contrast: less)')
170+
},
166171
}
167172

168173
export let corePlugins = {

src/lib/setupContextUtils.js

+1
Original file line numberDiff line numberDiff line change
@@ -575,6 +575,7 @@ function resolvePlugins(context, root) {
575575
variantPlugins['darkVariants'],
576576
variantPlugins['printVariant'],
577577
variantPlugins['screenVariants'],
578+
variantPlugins['prefersContrastVariants'],
578579
]
579580

580581
return [...corePluginList, ...beforeVariants, ...userPlugins, ...afterVariants, ...layerPlugins]

tests/variants.test.css

+12
Original file line numberDiff line numberDiff line change
@@ -899,3 +899,15 @@
899899
}
900900
}
901901
}
902+
@media (prefers-contrast: more) {
903+
.contrast-more\:bg-yellow-300 {
904+
--tw-bg-opacity: 1;
905+
background-color: rgb(253 224 71 / var(--tw-bg-opacity));
906+
}
907+
}
908+
@media (prefers-contrast: less) {
909+
.contrast-less\:bg-yellow-300 {
910+
--tw-bg-opacity: 1;
911+
background-color: rgb(253 224 71 / var(--tw-bg-opacity));
912+
}
913+
}

tests/variants.test.html

+4
Original file line numberDiff line numberDiff line change
@@ -134,6 +134,10 @@
134134
<div class="lg:animate-spin"></div>
135135
<div class="hover:animate-spin"></div>
136136

137+
<!-- Prefers contrast variants -->
138+
<div class="contrast-more:bg-yellow-300"></div>
139+
<div class="contrast-less:bg-yellow-300"></div>
140+
137141
<!-- Stacked variants -->
138142
<div class="open:hover:bg-red-200"></div>
139143
<div class="file:hover:bg-blue-600"></div>

0 commit comments

Comments
 (0)