Overview
CSS Compressor is a simple Java library and utility for reducing the size of Cascading Style Sheets (CSS).
This code is forked from Yahoo's YUI Compressor, an excellent open source library for shrinking Javascript and CSS. I've made a number of enhancements to the CSS compression algorithms. Hopefully one day in the future my changes will be merged in to the YUI source. In the meantime, I wanted to share my code, hence this distribution of this stand-alone CSS component.
CSS Compressor is free and open source. It is released under the BSD licence.
Features
CSS Compressor specific:
* Merges duplicate templates. E.g.
.myclassA
{
font-style: bold;
}
.myclassB
{
font-style: bold;
}
becomes:
.myclassA, .myclassB
{
font-style: bold;
}
* Enhanced dimension compression. E.g.,
.myclass {
border: 4px 4px 4px 4px;
}
becomes:
.myclass {
border: 4px;
}
* Additional color representation compression.
* Strip last semi-colon from blocks. E.g.,
.myclass
{
font-style: bold;
color: red;
}
becomes:
.myclass
{
font-style: bold;
color: red
}
Inherited features:
* Removes unneccessary whitespace. E.g.,
.myclass
{
font-style: bold;
}
becomes:
.myclass{font-style:bold;}
* Strip units when value is 0; e.g.,
.myclass
{
margin-left: 0px;
}
becomes:
.myclass
{
margin-left: 0;
}
* Color compression; e.g.,
rgb(51,102,153) -> #336699
#AABBCC -> #ABC
* Remove comments
* Strip empty rules.