Извлечь все наборы правил CSS, которые имеют определенное правило

Меня попросили изменить шрифт, используемый на веб-сайте моего клиента. они используют коммерческий шаблон.

Я искал в файлах таблиц стилей и увидел, что существует почти 400 вхождений, распределенных в 12 различных файлах для "font-family", мне нужно как-то переопределить их все.

Я не хочу использовать универсальное правило (*), так как такое чувство может привести к неожиданным результатам (например, помешать мне использовать второе семейство шрифтов)

Есть идеи?

Я подумал, что, может быть, я смогу использовать какой-нибудь инструмент / программное обеспечение для извлечения всего правила в каждом из файлов в отдельный файл (-ы) и чем я мог бы легко скопировать их и найти и заменить семью шрифтов, есть ли такой инструмент / программное обеспечение?

Я также мог бы использовать PHP для просмотра этих файлов и поиска / замены во время выполнения, но кажется плохой практикой запускать это при каждой загрузке страницы.

Посоветуйте, пожалуйста, что бы вы сделали?

** БОЛЬШЕ ИНФОРМАЦИИ: **

Я не хочу редактировать оригинальные файлы или копировать их полностью. Я хочу извлечь только имя правила, атрибут font-family и значение.

Пример:

.some_rule {color: red;font-size: 16px;**font-family: 'whatever';**float: right;}

Стать / Извлечь:

    .some_rule {**font-family: 'whatever';**}

Тогда я могу скопировать только эту часть в мой файл override.css (например). Спасибо!

** ОБНОВЛЕНИЕ ** Я уверен, что есть лучший способ сделать это, но для моих нужд, просто чтобы сделать вещи в несколько строк кода, это то, что я сделал:

  1. скопировал файлы во временную директорию
  2. отформатировал их так, чтобы ВСЕ было в новой строке (объявление, атрибут + значение, закрывающая фигурная скобка);
  3. запустите код php, который я написал - http://codepad.org/D2YOKYJ5

Этот фрагмент создает новый файл (или записывает в существующий) только с тем, что мне нужно.

1 ответ

Похоже, действие замены, которое простой редактор может сделать за считанные минуты.

Но вы можете рассмотреть возможность перехода на SCSS или другой прекомпилятор CSS.

Преимущество SCSS (например, перед SASS) состоит в том, что он полностью совместим с CSS, поэтому вы можете просто переименовать все файлы CSS в SCSS, настроить компилятор SCSS и начать работу.

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

Если вы вообще не хотите изменять CSS (так как это коммерческий шаблон, и вы можете иметь возможность загружать обновления), вы можете собрать все селекторы для шрифта и создать новый CSS-файл с ними, переопределяя только шрифты для тех конкретных селекторов.

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