Есть ли способ уменьшить два файла CSS до одного, содержащего уникальные селекторы?

У меня есть большой файл CSS, который был скомпилирован из Sass. У меня есть некоторый исходных файлов Sass, но, глядя на исходную карту, не все из них.

Я могу скомпилировать Sass, который есть у меня делать, в CSS, но, конечно, некоторые правила стиля отсутствуют.

Как я могу сократить эти два файла до правил, уникальных для оригинала? Я хотел бы иметь возможность сделать это, чтобы я мог включить этот CSS в исходный Sass, который у меня есть под рукой, чтобы ускорить будущую разработку.

У вас есть один CSS, созданный из набора файлов SASS. У вас есть некоторые, но не все файлы SASS. Вы упомянули "..эти два файла". Не могли бы вы уточнить.

Toolbox 20.04.2018 20:14

Исходный полный файл CSS и файл CSS, который я могу скомпилировать из моего неполного Sass.

Eric 20.04.2018 22:27
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Введение в CSS
Введение в CSS
CSS является неотъемлемой частью трех основных составляющих front-end веб-разработки.
Как выровнять Div по центру?
Как выровнять Div по центру?
Чтобы выровнять элемент <div>по горизонтали и вертикали с помощью CSS, можно использовать комбинацию свойств и значений CSS. Вот несколько методов,...
Навигация по приложениям React: Исчерпывающее руководство по React Router
Навигация по приложениям React: Исчерпывающее руководство по React Router
React Router стала незаменимой библиотекой для создания одностраничных приложений с навигацией в React. В этой статье блога мы подробно рассмотрим...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
CSS: FlexBox
CSS: FlexBox
Ранее разработчики использовали макеты с помощью Position и Float. После появления flexbox сценарий полностью изменился.
1
2
166
2

Ответы 2

Исходя из вашего вклада, вы должны выполнить следующую «обратную разработку»:

1) Сравните ваши файлы CSS в программе сравнения, например diffchecker.com (позвольте нам называть ваши файлы: file1.css и file2.css).

2) Программа сравнения выделит цветом повторяющиеся области.

3) Решите, какой файл обновить, и удалите дубликаты в этом файле.

Примечание!. Этот метод решит проблему только в том случае, если у вас есть дублированные текстовые блоки в ваших файлах CSS. Это не решит проблему «очистить и улучшить», например. если у вас есть разложенная "дублирующая" информация.

Я бы сделал это так:

  • взять исходный CSS и преобразовать его в Sass, изменив расширение на .scss
  • если исходный CSS минимизирован, используйте что-то вроде Средство форматирования CSS, чтобы получить читаемый код
  • назовите его что-то вроде legacy и сначала импортируйте в свой главный файл Sass
  • используйте наночастицы в процессе сборки для удаления повторяющихся стилей (убедитесь, что плагин выбросить дубликаты включен)

необязательно: включить дедупликацию только для производственной сборки, так как это замедляет генерацию CSS

недостатки:

  • если изменение свойств существующих классов в Sass dedupe не будет соответствовать устаревшим, и вы получите почти дубликаты - чтобы предотвратить это, я бы вручную зашел в legacy, чтобы удалить старые классы при их изменении в партиалах sass

Другие вопросы по теме