diff --git a/src/plugins/backdropFilter.js b/src/plugins/backdropFilter.js index 0484679a6..a0f85df39 100644 --- a/src/plugins/backdropFilter.js +++ b/src/plugins/backdropFilter.js @@ -2,7 +2,7 @@ export default function () { return function ({ config, addBase, addUtilities, variants }) { if (config('mode') === 'jit') { addBase({ - '*': { + '*, ::before, ::after': { '--tw-backdrop-blur': 'var(--tw-empty,/*!*/ /*!*/)', '--tw-backdrop-brightness': 'var(--tw-empty,/*!*/ /*!*/)', '--tw-backdrop-contrast': 'var(--tw-empty,/*!*/ /*!*/)', diff --git a/src/plugins/boxShadow.js b/src/plugins/boxShadow.js index a5295ddde..c5bf5e2a5 100644 --- a/src/plugins/boxShadow.js +++ b/src/plugins/boxShadow.js @@ -2,7 +2,7 @@ import transformThemeValue from '../util/transformThemeValue' let transformValue = transformThemeValue('boxShadow') let shadowReset = { - '*': { + '*, ::before, ::after': { '--tw-shadow': '0 0 #0000', }, } diff --git a/src/plugins/filter.js b/src/plugins/filter.js index 61efea002..d7904fd13 100644 --- a/src/plugins/filter.js +++ b/src/plugins/filter.js @@ -2,7 +2,7 @@ export default function () { return function ({ config, addBase, addUtilities, variants }) { if (config('mode') === 'jit') { addBase({ - '*': { + '*, ::before, ::after': { '--tw-blur': 'var(--tw-empty,/*!*/ /*!*/)', '--tw-brightness': 'var(--tw-empty,/*!*/ /*!*/)', '--tw-contrast': 'var(--tw-empty,/*!*/ /*!*/)', diff --git a/src/plugins/ringWidth.js b/src/plugins/ringWidth.js index 03f6078d7..f4f5c978d 100644 --- a/src/plugins/ringWidth.js +++ b/src/plugins/ringWidth.js @@ -10,7 +10,7 @@ export default function () { ) let ringReset = { - '*': { + '*, ::before, ::after': { '--tw-ring-inset': 'var(--tw-empty,/*!*/ /*!*/)', '--tw-ring-offset-width': theme('ringOffsetWidth.DEFAULT', '0px'), '--tw-ring-offset-color': theme('ringOffsetColor.DEFAULT', '#fff'), diff --git a/src/plugins/transform.js b/src/plugins/transform.js index 32e64112c..d9feb149c 100644 --- a/src/plugins/transform.js +++ b/src/plugins/transform.js @@ -2,7 +2,7 @@ export default function () { return function ({ config, addBase, addUtilities, variants }) { if (config('mode') === 'jit') { addBase({ - '*': { + '*, ::before, ::after': { '--tw-translate-x': '0', '--tw-translate-y': '0', '--tw-rotate': '0', diff --git a/tests/fixtures/tailwind-output-flagged.css b/tests/fixtures/tailwind-output-flagged.css index 4035ecae7..19dfb8408 100644 --- a/tests/fixtures/tailwind-output-flagged.css +++ b/tests/fixtures/tailwind-output-flagged.css @@ -26299,7 +26299,7 @@ video { mix-blend-mode: luminosity; } -* { +*, ::before, ::after { --tw-shadow: 0 0 #0000; } @@ -26548,7 +26548,7 @@ video { outline-offset: 2px; } -* { +*, ::before, ::after { --tw-ring-inset: var(--tw-empty,/*!*/ /*!*/); --tw-ring-offset-width: 0px; --tw-ring-offset-color: #fff; diff --git a/tests/fixtures/tailwind-output-important.css b/tests/fixtures/tailwind-output-important.css index 61598ce1b..a15563969 100644 --- a/tests/fixtures/tailwind-output-important.css +++ b/tests/fixtures/tailwind-output-important.css @@ -26299,7 +26299,7 @@ video { mix-blend-mode: luminosity !important; } -* { +*, ::before, ::after { --tw-shadow: 0 0 #0000; } @@ -26548,7 +26548,7 @@ video { outline-offset: 2px !important; } -* { +*, ::before, ::after { --tw-ring-inset: var(--tw-empty,/*!*/ /*!*/); --tw-ring-offset-width: 0px; --tw-ring-offset-color: #fff; diff --git a/tests/fixtures/tailwind-output-no-color-opacity.css b/tests/fixtures/tailwind-output-no-color-opacity.css index 2a35398e9..80f7502ee 100644 --- a/tests/fixtures/tailwind-output-no-color-opacity.css +++ b/tests/fixtures/tailwind-output-no-color-opacity.css @@ -23742,7 +23742,7 @@ video { mix-blend-mode: luminosity; } -* { +*, ::before, ::after { --tw-shadow: 0 0 #0000; } @@ -23991,7 +23991,7 @@ video { outline-offset: 2px; } -* { +*, ::before, ::after { --tw-ring-inset: var(--tw-empty,/*!*/ /*!*/); --tw-ring-offset-width: 0px; --tw-ring-offset-color: #fff; diff --git a/tests/fixtures/tailwind-output.css b/tests/fixtures/tailwind-output.css index 4035ecae7..19dfb8408 100644 --- a/tests/fixtures/tailwind-output.css +++ b/tests/fixtures/tailwind-output.css @@ -26299,7 +26299,7 @@ video { mix-blend-mode: luminosity; } -* { +*, ::before, ::after { --tw-shadow: 0 0 #0000; } @@ -26548,7 +26548,7 @@ video { outline-offset: 2px; } -* { +*, ::before, ::after { --tw-ring-inset: var(--tw-empty,/*!*/ /*!*/); --tw-ring-offset-width: 0px; --tw-ring-offset-color: #fff; diff --git a/tests/jit/basic-usage.test.css b/tests/jit/basic-usage.test.css index 6d1dde932..1f0ea66f7 100644 --- a/tests/jit/basic-usage.test.css +++ b/tests/jit/basic-usage.test.css @@ -1,4 +1,6 @@ -* { +*, +::before, +::after { --tw-translate-x: 0; --tw-translate-y: 0; --tw-rotate: 0; @@ -9,14 +11,8 @@ --tw-transform: translateX(var(--tw-translate-x)) translateY(var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)); -} -*, -::before, -::after { --tw-border-opacity: 1; border-color: rgba(229, 231, 235, var(--tw-border-opacity)); -} -* { --tw-shadow: 0 0 #0000; --tw-ring-inset: var(--tw-empty, /*!*/ /*!*/); --tw-ring-offset-width: 0px; diff --git a/tests/jit/collapse-adjacent-rules.test.css b/tests/jit/collapse-adjacent-rules.test.css index af73f469d..68a80c703 100644 --- a/tests/jit/collapse-adjacent-rules.test.css +++ b/tests/jit/collapse-adjacent-rules.test.css @@ -1,4 +1,6 @@ -* { +*, +::before, +::after { --tw-translate-x: 0; --tw-translate-y: 0; --tw-rotate: 0; @@ -9,14 +11,8 @@ --tw-transform: translateX(var(--tw-translate-x)) translateY(var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)); -} -*, -::before, -::after { --tw-border-opacity: 1; border-color: rgba(229, 231, 235, var(--tw-border-opacity)); -} -* { --tw-shadow: 0 0 #0000; --tw-ring-inset: var(--tw-empty, /*!*/ /*!*/); --tw-ring-offset-width: 0px; diff --git a/tests/jit/import-syntax.test.css b/tests/jit/import-syntax.test.css index 40fdd04e3..73c3e283c 100644 --- a/tests/jit/import-syntax.test.css +++ b/tests/jit/import-syntax.test.css @@ -1,4 +1,6 @@ -* { +*, +::before, +::after { --tw-translate-x: 0; --tw-translate-y: 0; --tw-rotate: 0; @@ -9,14 +11,8 @@ --tw-transform: translateX(var(--tw-translate-x)) translateY(var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)); -} -*, -::before, -::after { --tw-border-opacity: 1; border-color: rgba(229, 231, 235, var(--tw-border-opacity)); -} -* { --tw-shadow: 0 0 #0000; --tw-ring-inset: var(--tw-empty, /*!*/ /*!*/); --tw-ring-offset-width: 0px; diff --git a/tests/jit/important-boolean.test.css b/tests/jit/important-boolean.test.css index 3e65645a6..a61b268ac 100644 --- a/tests/jit/important-boolean.test.css +++ b/tests/jit/important-boolean.test.css @@ -1,4 +1,6 @@ -* { +*, +::before, +::after { --tw-translate-x: 0; --tw-translate-y: 0; --tw-rotate: 0; @@ -9,14 +11,8 @@ --tw-transform: translateX(var(--tw-translate-x)) translateY(var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)); -} -*, -::before, -::after { --tw-border-opacity: 1; border-color: rgba(229, 231, 235, var(--tw-border-opacity)); -} -* { --tw-shadow: 0 0 #0000; --tw-ring-inset: var(--tw-empty, /*!*/ /*!*/); --tw-ring-offset-width: 0px; diff --git a/tests/jit/important-modifier-prefix.test.css b/tests/jit/important-modifier-prefix.test.css index c50ff13a9..e54af603b 100644 --- a/tests/jit/important-modifier-prefix.test.css +++ b/tests/jit/important-modifier-prefix.test.css @@ -1,4 +1,6 @@ -* { +*, +::before, +::after { --tw-translate-x: 0; --tw-translate-y: 0; --tw-rotate: 0; @@ -9,14 +11,8 @@ --tw-transform: translateX(var(--tw-translate-x)) translateY(var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)); -} -*, -::before, -::after { --tw-border-opacity: 1; border-color: rgba(229, 231, 235, var(--tw-border-opacity)); -} -* { --tw-shadow: 0 0 #0000; --tw-ring-inset: var(--tw-empty, /*!*/ /*!*/); --tw-ring-offset-width: 0px; diff --git a/tests/jit/important-modifier.test.css b/tests/jit/important-modifier.test.css index 3c0189538..8003c41b2 100644 --- a/tests/jit/important-modifier.test.css +++ b/tests/jit/important-modifier.test.css @@ -1,4 +1,6 @@ -* { +*, +::before, +::after { --tw-translate-x: 0; --tw-translate-y: 0; --tw-rotate: 0; @@ -9,14 +11,8 @@ --tw-transform: translateX(var(--tw-translate-x)) translateY(var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)); -} -*, -::before, -::after { --tw-border-opacity: 1; border-color: rgba(229, 231, 235, var(--tw-border-opacity)); -} -* { --tw-shadow: 0 0 #0000; --tw-ring-inset: var(--tw-empty, /*!*/ /*!*/); --tw-ring-offset-width: 0px; diff --git a/tests/jit/important-selector.test.css b/tests/jit/important-selector.test.css index 94e6cfc6b..bf54935d1 100644 --- a/tests/jit/important-selector.test.css +++ b/tests/jit/important-selector.test.css @@ -1,4 +1,6 @@ -* { +*, +::before, +::after { --tw-translate-x: 0; --tw-translate-y: 0; --tw-rotate: 0; @@ -9,14 +11,8 @@ --tw-transform: translateX(var(--tw-translate-x)) translateY(var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)); -} -*, -::before, -::after { --tw-border-opacity: 1; border-color: rgba(229, 231, 235, var(--tw-border-opacity)); -} -* { --tw-shadow: 0 0 #0000; --tw-ring-inset: var(--tw-empty, /*!*/ /*!*/); --tw-ring-offset-width: 0px; diff --git a/tests/jit/kitchen-sink.test.css b/tests/jit/kitchen-sink.test.css index e7d3d64c9..29b7610b3 100644 --- a/tests/jit/kitchen-sink.test.css +++ b/tests/jit/kitchen-sink.test.css @@ -126,7 +126,9 @@ } } } -* { +*, +::before, +::after { --tw-translate-x: 0; --tw-translate-y: 0; --tw-rotate: 0; @@ -137,14 +139,8 @@ --tw-transform: translateX(var(--tw-translate-x)) translateY(var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)); -} -*, -::before, -::after { --tw-border-opacity: 1; border-color: rgba(229, 231, 235, var(--tw-border-opacity)); -} -* { --tw-shadow: 0 0 #0000; --tw-ring-inset: var(--tw-empty, /*!*/ /*!*/); --tw-ring-offset-width: 0px; @@ -291,7 +287,9 @@ div { .custom-component { background: #123456; } -* { +*, +::before, +::after { padding: 5px; } .foo .bg-black { @@ -354,7 +352,9 @@ div { .custom-util { background: #abcdef; } -* { +*, +::before, +::after { margin: 10px; } .first\:pt-0:first-child { diff --git a/tests/jit/kitchen-sink.test.js b/tests/jit/kitchen-sink.test.js index 6e6063858..7e3b8ee3c 100644 --- a/tests/jit/kitchen-sink.test.js +++ b/tests/jit/kitchen-sink.test.js @@ -76,7 +76,9 @@ test('it works', () => { .custom-util { background: #abcdef; } - * { + *, +::before, +::after { margin: 10px; } } @@ -87,7 +89,9 @@ test('it works', () => { .custom-component { background: #123456; } - * { + *, +::before, +::after { padding: 5px; } .foo .bg-black { diff --git a/tests/jit/prefix.test.css b/tests/jit/prefix.test.css index 13650728f..718a928fa 100644 --- a/tests/jit/prefix.test.css +++ b/tests/jit/prefix.test.css @@ -1,4 +1,6 @@ -* { +*, +::before, +::after { --tw-translate-x: 0; --tw-translate-y: 0; --tw-rotate: 0; @@ -9,14 +11,8 @@ --tw-transform: translateX(var(--tw-translate-x)) translateY(var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)); -} -*, -::before, -::after { --tw-border-opacity: 1; border-color: rgba(229, 231, 235, var(--tw-border-opacity)); -} -* { --tw-shadow: 0 0 #0000; --tw-ring-inset: var(--tw-empty, /*!*/ /*!*/); --tw-ring-offset-width: 0px; diff --git a/tests/jit/relative-purge-paths.test.css b/tests/jit/relative-purge-paths.test.css index 2a64a717e..00acb8255 100644 --- a/tests/jit/relative-purge-paths.test.css +++ b/tests/jit/relative-purge-paths.test.css @@ -1,4 +1,6 @@ -* { +*, +::before, +::after { --tw-translate-x: 0; --tw-translate-y: 0; --tw-rotate: 0; @@ -9,14 +11,8 @@ --tw-transform: translateX(var(--tw-translate-x)) translateY(var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)); -} -*, -::before, -::after { --tw-border-opacity: 1; border-color: rgba(229, 231, 235, var(--tw-border-opacity)); -} -* { --tw-shadow: 0 0 #0000; --tw-ring-inset: var(--tw-empty, /*!*/ /*!*/); --tw-ring-offset-width: 0px; diff --git a/tests/jit/variants.test.css b/tests/jit/variants.test.css index be2491c28..a80370eae 100644 --- a/tests/jit/variants.test.css +++ b/tests/jit/variants.test.css @@ -1,4 +1,6 @@ -* { +*, +::before, +::after { --tw-translate-x: 0; --tw-translate-y: 0; --tw-rotate: 0; @@ -9,14 +11,8 @@ --tw-transform: translateX(var(--tw-translate-x)) translateY(var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)); -} -*, -::before, -::after { --tw-border-opacity: 1; border-color: rgba(229, 231, 235, var(--tw-border-opacity)); -} -* { --tw-shadow: 0 0 #0000; --tw-ring-inset: var(--tw-empty, /*!*/ /*!*/); --tw-ring-offset-width: 0px;