Извлечь все наборы правил 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 (например). Спасибо!
** ОБНОВЛЕНИЕ ** Я уверен, что есть лучший способ сделать это, но для моих нужд, просто чтобы сделать вещи в несколько строк кода, это то, что я сделал:
- скопировал файлы во временную директорию
- отформатировал их так, чтобы ВСЕ было в новой строке (объявление, атрибут + значение, закрывающая фигурная скобка);
- запустите код php, который я написал - http://codepad.org/D2YOKYJ5
Этот фрагмент создает новый файл (или записывает в существующий) только с тем, что мне нужно.
1 ответ
Похоже, действие замены, которое простой редактор может сделать за считанные минуты.
Но вы можете рассмотреть возможность перехода на SCSS или другой прекомпилятор CSS.
Преимущество SCSS (например, перед SASS) состоит в том, что он полностью совместим с CSS, поэтому вы можете просто переименовать все файлы CSS в SCSS, настроить компилятор SCSS и начать работу.
Получив это, вы можете начать заменять семейство шрифтов на переменные или миксины, и постепенно вы можете добавлять все больше и больше структур к файлам CSS путем рефакторинга определенных его частей.
Если вы вообще не хотите изменять CSS (так как это коммерческий шаблон, и вы можете иметь возможность загружать обновления), вы можете собрать все селекторы для шрифта и создать новый CSS-файл с ними, переопределяя только шрифты для тех конкретных селекторов.