Created
April 16, 2021 15:57
-
-
Save samselikoff/b3c5126ee4f4e69e60b0af0aa5bfb2e7 to your computer and use it in GitHub Desktop.
Firefox plugin for Tailwind CSS. Add styles that target Firefox browser only.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
const plugin = require("tailwindcss/plugin"); | |
module.exports = { | |
mode: "jit", | |
purge: { | |
content: ["./src/**/*.{js,ts,jsx,tsx,mdx,vue}"], | |
}, | |
theme: { extend: {} }, | |
variants: {}, | |
plugins: [ | |
plugin(function ({ addVariant, e, postcss }) { | |
addVariant("firefox", ({ container, separator }) => { | |
const isFirefoxRule = postcss.atRule({ | |
name: "-moz-document", | |
params: "url-prefix()", | |
}); | |
isFirefoxRule.append(container.nodes); | |
container.append(isFirefoxRule); | |
isFirefoxRule.walkRules((rule) => { | |
rule.selector = `.${e( | |
`firefox${separator}${rule.selector.slice(1)}` | |
)}`; | |
}); | |
}); | |
}), | |
], | |
}; |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
great implementation!
this is just a minor tweak to make it work with the tailwind custom opacity modifier like
bg-black/25
ortext-red-400/50
you might also notice this variant uses
@supports (-moz-appearance:none)
which has almost the same support for firefox and is known to be a good replacement for@-moz-document url-prefix()
which is outdated and obsolete.