clean-css: fast and efficient CSS optimizer

# Go to clean-css project page

level 0 optimizations
level 1 optimizations

- cleanup @charset at-rules
- normalize URLs
- optimize background properties
- optimize border-radius properties
- optimize filter / -ms-filter properties
- optimize font-weight properties
- optimize outline properties
- remove empty rules and nested blocks (after level 1 optimizations)
- remove negative paddings
- remove quotes
- remove whitespace
- replace multiple zeros
- replace time units
- replace 0 units
- unit rounding precision
- tidy at-rules
- tidy block scopes
- tidy selectors

level 2 optimizations

- merge adjacent rules
- merge components into shorthand properties
- merge @media nested blocks
- merge non-adjacent rules
- merge semantically
- override properties based on understandability
- reduce non-adjacent rules
- remove duplicate @font-face rules
- remove duplicate @media nested blocks
- remove duplicate rules
- remove empty rules and nested blocks (after level 2 optimizations)
- remove unused @counter-style, @font-face, @keyframes, and @namespace at rules
- restructure rules
- skip optimizing properties

output formatting

- insert line break after at-rules
- insert line break after block begins
- insert line break after block ends
- insert line break after comments
- insert line break after properties
- insert line break after rule begins
- insert line break after rule ends
- insert line break before block ends
- insert line break between selectors
- indent with
- insert space between selector relation
- insert space before block begins
- insert space before property value
- wrap lines when longer than characters

CSS optimizing happens directly in your browser using a browser-compatible build of clean-css. If you miss any functionality, you are more than welcome to add it!