Skip to content

Commit 5ce575a

Browse files
authored
Support opacity values in increments of 0.25 by default (#14980)
This PR updates all areas in the framework that accept opacity values (`opacity-*`, `backdrop-opacity-*`, `bg-red-500/*`, etc.) to accept fractional values in increments of 0.25 instead of just whole numbers. We noticed we use values like `2.5` and `7.5` pretty regularly in our templates and don't see why those should be treated as any more "weird" than something like `opacity-63` which we already support, so baking this in to core. IntelliSense will still only suggest values in increments of `5` like it did before. --------- Co-authored-by: Adam Wathan <[email protected]>
1 parent 437579d commit 5ce575a

File tree

5 files changed

+360
-11
lines changed

5 files changed

+360
-11
lines changed

CHANGELOG.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,9 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
77

88
## [Unreleased]
99

10-
- Nothing yet!
10+
### Added
11+
12+
- Support opacity values in increments of `0.25` by default ([#14980](https://github.com/tailwindlabs/tailwindcss/pull/14980))
1113

1214
## [4.0.0-alpha.33] - 2024-11-11
1315

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

Lines changed: 108 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -98,6 +98,18 @@ exports[`border-* 1`] = `
9898
border-color: var(--color-red-500);
9999
}
100100
101+
.border-red-500\\/2\\.5 {
102+
border-color: color-mix(in oklch, var(--color-red-500) 2.5%, transparent);
103+
}
104+
105+
.border-red-500\\/2\\.25 {
106+
border-color: color-mix(in oklch, var(--color-red-500) 2.25%, transparent);
107+
}
108+
109+
.border-red-500\\/2\\.75 {
110+
border-color: color-mix(in oklch, var(--color-red-500) 2.75%, transparent);
111+
}
112+
101113
.border-red-500\\/50 {
102114
border-color: color-mix(in oklch, var(--color-red-500) 50%, transparent);
103115
}
@@ -219,6 +231,18 @@ exports[`border-b-* 1`] = `
219231
border-bottom-color: var(--color-red-500);
220232
}
221233
234+
.border-b-red-500\\/2\\.5 {
235+
border-bottom-color: color-mix(in oklch, var(--color-red-500) 2.5%, transparent);
236+
}
237+
238+
.border-b-red-500\\/2\\.25 {
239+
border-bottom-color: color-mix(in oklch, var(--color-red-500) 2.25%, transparent);
240+
}
241+
242+
.border-b-red-500\\/2\\.75 {
243+
border-bottom-color: color-mix(in oklch, var(--color-red-500) 2.75%, transparent);
244+
}
245+
222246
.border-b-red-500\\/50 {
223247
border-bottom-color: color-mix(in oklch, var(--color-red-500) 50%, transparent);
224248
}
@@ -340,6 +364,18 @@ exports[`border-e-* 1`] = `
340364
border-inline-end-color: var(--color-red-500);
341365
}
342366
367+
.border-e-red-500\\/2\\.5 {
368+
border-inline-end-color: color-mix(in oklch, var(--color-red-500) 2.5%, transparent);
369+
}
370+
371+
.border-e-red-500\\/2\\.25 {
372+
border-inline-end-color: color-mix(in oklch, var(--color-red-500) 2.25%, transparent);
373+
}
374+
375+
.border-e-red-500\\/2\\.75 {
376+
border-inline-end-color: color-mix(in oklch, var(--color-red-500) 2.75%, transparent);
377+
}
378+
343379
.border-e-red-500\\/50 {
344380
border-inline-end-color: color-mix(in oklch, var(--color-red-500) 50%, transparent);
345381
}
@@ -461,6 +497,18 @@ exports[`border-l-* 1`] = `
461497
border-left-color: var(--color-red-500);
462498
}
463499
500+
.border-l-red-500\\/2\\.5 {
501+
border-left-color: color-mix(in oklch, var(--color-red-500) 2.5%, transparent);
502+
}
503+
504+
.border-l-red-500\\/2\\.25 {
505+
border-left-color: color-mix(in oklch, var(--color-red-500) 2.25%, transparent);
506+
}
507+
508+
.border-l-red-500\\/2\\.75 {
509+
border-left-color: color-mix(in oklch, var(--color-red-500) 2.75%, transparent);
510+
}
511+
464512
.border-l-red-500\\/50 {
465513
border-left-color: color-mix(in oklch, var(--color-red-500) 50%, transparent);
466514
}
@@ -582,6 +630,18 @@ exports[`border-r-* 1`] = `
582630
border-right-color: var(--color-red-500);
583631
}
584632
633+
.border-r-red-500\\/2\\.5 {
634+
border-right-color: color-mix(in oklch, var(--color-red-500) 2.5%, transparent);
635+
}
636+
637+
.border-r-red-500\\/2\\.25 {
638+
border-right-color: color-mix(in oklch, var(--color-red-500) 2.25%, transparent);
639+
}
640+
641+
.border-r-red-500\\/2\\.75 {
642+
border-right-color: color-mix(in oklch, var(--color-red-500) 2.75%, transparent);
643+
}
644+
585645
.border-r-red-500\\/50 {
586646
border-right-color: color-mix(in oklch, var(--color-red-500) 50%, transparent);
587647
}
@@ -703,6 +763,18 @@ exports[`border-s-* 1`] = `
703763
border-inline-start-color: var(--color-red-500);
704764
}
705765
766+
.border-s-red-500\\/2\\.5 {
767+
border-inline-start-color: color-mix(in oklch, var(--color-red-500) 2.5%, transparent);
768+
}
769+
770+
.border-s-red-500\\/2\\.25 {
771+
border-inline-start-color: color-mix(in oklch, var(--color-red-500) 2.25%, transparent);
772+
}
773+
774+
.border-s-red-500\\/2\\.75 {
775+
border-inline-start-color: color-mix(in oklch, var(--color-red-500) 2.75%, transparent);
776+
}
777+
706778
.border-s-red-500\\/50 {
707779
border-inline-start-color: color-mix(in oklch, var(--color-red-500) 50%, transparent);
708780
}
@@ -824,6 +896,18 @@ exports[`border-t-* 1`] = `
824896
border-top-color: var(--color-red-500);
825897
}
826898
899+
.border-t-red-500\\/2\\.5 {
900+
border-top-color: color-mix(in oklch, var(--color-red-500) 2.5%, transparent);
901+
}
902+
903+
.border-t-red-500\\/2\\.25 {
904+
border-top-color: color-mix(in oklch, var(--color-red-500) 2.25%, transparent);
905+
}
906+
907+
.border-t-red-500\\/2\\.75 {
908+
border-top-color: color-mix(in oklch, var(--color-red-500) 2.75%, transparent);
909+
}
910+
827911
.border-t-red-500\\/50 {
828912
border-top-color: color-mix(in oklch, var(--color-red-500) 50%, transparent);
829913
}
@@ -945,6 +1029,18 @@ exports[`border-x-* 1`] = `
9451029
border-inline-color: var(--color-red-500);
9461030
}
9471031
1032+
.border-x-red-500\\/2\\.5 {
1033+
border-inline-color: color-mix(in oklch, var(--color-red-500) 2.5%, transparent);
1034+
}
1035+
1036+
.border-x-red-500\\/2\\.25 {
1037+
border-inline-color: color-mix(in oklch, var(--color-red-500) 2.25%, transparent);
1038+
}
1039+
1040+
.border-x-red-500\\/2\\.75 {
1041+
border-inline-color: color-mix(in oklch, var(--color-red-500) 2.75%, transparent);
1042+
}
1043+
9481044
.border-x-red-500\\/50 {
9491045
border-inline-color: color-mix(in oklch, var(--color-red-500) 50%, transparent);
9501046
}
@@ -1066,6 +1162,18 @@ exports[`border-y-* 1`] = `
10661162
border-block-color: var(--color-red-500);
10671163
}
10681164
1165+
.border-y-red-500\\/2\\.5 {
1166+
border-block-color: color-mix(in oklch, var(--color-red-500) 2.5%, transparent);
1167+
}
1168+
1169+
.border-y-red-500\\/2\\.25 {
1170+
border-block-color: color-mix(in oklch, var(--color-red-500) 2.25%, transparent);
1171+
}
1172+
1173+
.border-y-red-500\\/2\\.75 {
1174+
border-block-color: color-mix(in oklch, var(--color-red-500) 2.75%, transparent);
1175+
}
1176+
10691177
.border-y-red-500\\/50 {
10701178
border-block-color: color-mix(in oklch, var(--color-red-500) 50%, transparent);
10711179
}

0 commit comments

Comments
 (0)