Сравнение и рационализация CSS - не на основе файлов или различий
Я нахожусь в процессе принятия нескольких отдельных приложений asp.net и их объединения.
Одной из проблем является рационализация CSS между двумя приложениями - app1 имеет два файла css, а app2 - около 8 из них. Большая часть CSS между двумя приложениями одинакова, но есть некоторые различия. Я ищу инструмент, чтобы сравнить все элементы каждого приложения и показать, чего не хватает, что отличается и т. Д. В идеале на выходе должно быть 3 файла: Common, app1 и app2, но я не буду таким суетливым, если он можете просто показать мне разницу между двумя приложениями.
Существует ли такой инструмент?
4 ответа
Если вы ненавидите скачивать инструменты, здесь есть онлайн-версия css Comparer http://www.alanhart.co.uk/tools/compare-css.php
Он обеспечивает сравнение файлов классов CSS между двумя файлами
Объедините все эти файлы в один файл и запустите его через оптимизатор CSS или компрессор. Оптимизатор должен увидеть все ваши дублирующие селекторы и отсеять их.
Я бы порекомендовал компрессор YUI, но есть также множество веб-компрессоров / оптимизаторов. Вот и то и другое. YMMV с ними, но хороший поиск в Google может вызвать кучу больше.
Я не знаю отдельного инструмента, предназначенного для этой конкретной цели. Есть класс PHP под названием "CSS Comparer", но я понятия не имею, насколько легко им пользоваться. Скриншот на этой странице выглядит многообещающе.
Лично я, вероятно, просто объединю все файлы вместе, чтобы у вас был один файл для каждого приложения, а затем запустил для них diff. Чтобы сделать это еще проще, вы можете запустить оба файла через что-то вроде CSSTidy или выполнить некоторую творческую обработку файлов с поиском / заменой и сортировкой. Это может получить все объявления в одном и том же порядке в обоих файлах, поэтому разница будет более понятной.
Обычно я бы рекомендовал diff. Поскольку вы явно пишете, что ищете что-то "не основанное на разнице", возможно, вы могли бы описать, почему различие не помогает вам.
Тогда другие могут предложить что-то другое.