Css компрессор / нормализатор
Написал для себя сегодня вечером нормализатор и сжиматель css кода. Думаю и вам, уважаемые пользователи, он пригодится. Сжиматель кода настроен на максимальное уменьшение размера css (функционал обновлен):
Нормализатор работает с точностью до наоборот: он любой css код превращает в стройный, хорошо читаемый листинг. Вот сам скрипт, вы можете его протестировать прямо здесь: Если в результате преобразований выплыли какие либо баги - сообщите мне об этом пожалуйста. И скрипт не очень хорошо работает с expressions так как не заточен под js. Жду ваших комментариев!
- Убирает больше одного пробела подряд
- Убирает лишние пробелы в селекторах
- Убирает лишние пробелы в значениях
- Убирает пробелы перед величинами (px|em|%)
- Убирает все переносы строк и табуляцию
- Убирает ; в конце блока
- Убирает случайное повторение ;
- Заменяет bold на 700
- Заменяет 0px на 0
- Заменяет 1px 1px 1px 1px на 1px
- Заменяет 1px 2px 1px 2px на 1px 2px
- Заменяет 1px 2px 3px 2px на 1px 2px 3px
- Заменяет margin-top:.. ,margin-left:... на margin:
- Заменяет #ff44hh на #f4h
Нормализатор работает с точностью до наоборот: он любой css код превращает в стройный, хорошо читаемый листинг. Вот сам скрипт, вы можете его протестировать прямо здесь: Если в результате преобразований выплыли какие либо баги - сообщите мне об этом пожалуйста. И скрипт не очень хорошо работает с expressions так как не заточен под js. Жду ваших комментариев!
60, 7, 9515
До сжатия: 861 байт
После сжатия: 491 байт
Обидно что в такой сутуации "};}" алгоритм убирал точку с запятой...но все же он не предназначен для "Робота" )
iceyboard.no-ip.org : 8629 байт (код сильно изменен и частично испорчен)
CssTidy технология : 9252 байт (код сильно изменен и частично испорчен)
Мой css компрессор: 11290 байт (код валиден)
cssdrive.com: 11414 байт (код валиден)
cssoptimiser.com : 12139 байт (код испорчен)
tools.arantius.com : 14100 байт (код валиден)
Как видите у меня далеко не худшие результаты. + мой скрипт не вмешивается в расположение значений и селекторов, что сохраняет работоспособность кода в отличие от 2 первых компрессоров. Могу с уверенностью сказать, что из приведенных вариантов, мой - самый стабильный.