CSS Autoprefixer
Add vendor prefixes (-webkit-, -moz-, -ms-) for the legacy browsers you still support.
What is Autoprefixer?
A prefixer for the CSS features that still need vendor prefixes on older engines: backdrop-filter, user-select, mask, hyphens, position: sticky, and the -ms- flexbox and grid properties for IE 11.
How it works
Cast in its simplest form: declarations inside rule blocks are matched against an explicit rule table (property, optional value match, prefix, target), and a prefixed copy is inserted before the original when any selected target needs it. Anything that requires a different value shape — IE's -ms-grid layout, the old flexbox specification — is listed as a warning instead of being guessed at.
- Paste the source. Drop in code, a stylesheet, a query or a selector list. Everything is read locally — the page never uploads what you paste.
- Choose the options. Indent width, quote style, keyword case or target browsers. The result updates as you change them, so you can see the effect immediately.
- Copy or download. Copy the result to the clipboard or download it as a file. Reset clears the form and returns every option to its default.
Examples
A sticky header that has to work in Safari 13
`position: sticky` gains the -webkit- copy that older Safari needs, and `backdrop-filter` gains its prefix too.
Dropping IE 11 support later
Untick IE and every -ms- flexbox declaration disappears — the checkboxes are the whole compatibility policy, in one place.
Common mistakes
Expecting a formatter to fix invalid code
Formatting is whitespace and quoting. A missing brace, an unclosed tag or an unquoted variable survives the round trip and is reported instead — check the findings list.
Minifying without running the tests afterwards
Even a safe, non-mangling minifier can expose an existing automatic-semicolon-insertion bug. The JavaScript Minifier keeps the newlines that matter, but re-run your tests before shipping.
Treating a rewritten query as verified
The SQL Dialect Converter translates the syntax it can prove; data types, casts and function differences are listed for review, not guessed. Run the converted query against a real database.
Renaming or reformatting generated files
Regenerating a formatter's output is a no-op only if the formatter is the same one that produced it. Keep generated code out of the round trip and format the source it came from.
Frequently asked questions
Is this the same as Autoprefixer?
No. Autoprefixer uses a caniuse database and a browser-version query list, so it knows exactly which version stopped needing which prefix. This tool uses a coarse set of target switches and a hand-written rule table — enough to cover the long-lived prefixes, and honest about it.
Why is my declaration flagged instead of prefixed?
Because the prefixed form is not a simple copy. IE 11's grid uses `-ms-grid-columns` with a different value syntax and the old flexbox used different properties entirely; emitting a prefix that does not work would be worse than telling you to look.
Should I still be prefixing in 2026?
Mostly no — untick everything and the tool returns your CSS unchanged. Keeping the tool around is still useful when you must support an older embedded webview or a client's pinned browser version.