Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Интернет » Web-программирование » Очистка css-файлов для чайников (втч Windows XP и без .Net)

Модерирует : Cheery

 Версия для печати • ПодписатьсяДобавить в закладки

Открыть новую тему     Написать ответ в эту тему

Grishanenko

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Давно мне не нравится что при сохранении страниц из интернета зачастую размер css получается в пару десятков раз больше, чем непосредственно у html-файла.
Похоже что современные "сайтописатели" сваливают большинство стилей со всех страниц сайта в один огромный css-файл.
 
Начал поиск с аддонов для браузера. В моем случае это MyPal (основан на FireFox и PaleMoon).
 
 
В Classic Addons Archive нашел единственный подходящий аддон здесь:
caa:addon/dust-me-selectors
dust_me_selectors-4.1-fx.xpi
Первая преграда - работает только с сайтами, а не с уже сохраненными файлами.
При попытке обработки локальной страницы, пишет: Cannot process stylesheet [Content-type is not CSS]
 
Открыл страницу по-умолчанию в MyPal:
https://duckduckgo.com/?t=palemoon
 
Попробовал сделать очистку - пишет что этот css слишком сжат для него. Похоже, ему подавай такой, чтобы в одной строке было только один селектор.
 
Открыл какую-то другую страничку.
Tools - Dust-Me Selectors - Scan this page
Открылось окошко со список неиспользуемых селекторов в каждом из 4-х css файлов.
 
Жму Clean на первом.
Внизу нужно поставить пыржик "Removed".
Save - сохранить.
 
Повторить для всех файлов.
 
Получается слишком много мороки.
На некоторых сайтах все равно вываливаются ошибки. Иногда залипает на десяток минут и даже не понятно завершится ли процесс. Может грузить проц и 20 мину, а по факту ничего и сохранение не происходит.
 
 
Второй аддон http://web.archive.org/web/20210417001427/https://dl-ssl.google.com/page-speed/current/page-speed.xpi
Работает через firebug
 
Запустить с разными версиями firebug не получилось.
Анализ не работает.
https://code.google.com/archive/p/page-speed/issues/1979
"Unable to run Page Speed"
 
 
Третий и последний найденный инструмент purifycss работает через Node.js.
В инете есть лишь краткие описания. Но я совсем не в теме, так что пришлось разбираться что к чему.  
Последняя версия Node.js, работающая в Win XP https://nodejs.org/download/release/v5.12.0/
Достаточно установить "Node.js runtime" и "npm package manager". Прописывание в Path - кому как удобнее, я не ставил.
Инсталлятор навалит 3505 файлов сюда: C:\Program Files\nodejs\
 
Для установки purifycss нужно перейти в директорию C:\Program Files\nodejs\ открыть командную строку и ввести:
npm install purifycss@1.2.6
 
Когда purifycss скачается вместе со всеми зависимостями, то число файлов увеличится до 4327.
 
Использование:
purifycss style.css index.html --min --out purify-style.css --info --rejected
 
--min       файл CSS будет минимизирован. Удаляются все переносы строк. Если предполагается дальнейшее изменение - лучше не делать минимизацию.
--out       путь и имя для сохранения нового файла. Можно указать имя оригинального файлы, тогда он будет перезаписан.
--info      отображает результат выполнения очистки. Втч на сколько процентов уменьшен файл.
--rejected  выводит список всех селекторов, которые были удалены.
 
Я в DoubleCommander создал для этого дела кнопку:
Команда:
node.exe
Параметры:
%t1 node_modules\purifycss\bin\purifycss %pl %pr --out %pl --info
Путь запуска:
%COMMANDER_PATH%\plugins\node\
 
В левой панели выбран css, в правой - html. Нажал кнопку - через 10-30 сек готово.
Правда, случаются и ошибки. Обычно, при этом указывается номер строки и номер символа, где программе что-то не понравилось.
Здесь уж только открывать css, искать все глазами, исправлять и пробовать. И хорошо если в css вся информация находится не в одной строке с номером символа 10000+ (та самая минимизация).
 
Пока большинство проблемы ограничивалось лишними "//" после ";" т.е. не понимает комментарии типа:

Код:
.cke_skin_kama_container {
    visibility:visible;  
    background: #FFFFFF; // no stylevar
}
 
Иногда ошибка из-за отсутствия значения:

Код:
    color: ;  

Еще попадались квадратики после "}".
Плохо реагирует на:

Код:
!important;

 
 
Было у меня желание скомпилировать всю эту кучу файлов в exe, но найденная программа https://github.com/nexe/nexe/releases/download/v3.3.3/windows-x86-12.4.0
не запускается, пишет "Точка входа не найдена". Видимо, хочет .Net или Win7.
Попадались еще какие-то программы, но с ними тоже ничего не вышло. Подробностей уже не вспомню.

Всего записей: 719 | Зарегистр. 17-06-2006 | Отправлено: 23:44 14-09-2022
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Grishanenko

Цитата:
что при сохранении страниц из интернета зачастую размер css получается в пару десятков раз больше, чем непосредственно у html-файла.

и? не страдайте фигней, потому что, если на страницах есть javascript, классы могут добавляться динамически.
 

Цитата:
Похоже что современные "сайтописатели" сваливают большинство стилей со всех страниц сайта в один огромный css-файл.

не "сайтописатели", а упаковщики. делается это намеренно, для уменьшения количества запросов и сжатия данных в одном файле.
https://ru.wikipedia.org/wiki/Webpack и аналогичные.
 

Цитата:
Пока большинство проблемы ограничивалось лишними "//" после ";" т.е. не понимает комментарии типа:

потому что в css нет таких комментариев.
есть только /* */ и все.
 
все, что вы упоминаете, соответствует невалидному css, поэтому и работать с ним программы не обязаны.

Всего записей: 15108 | Зарегистр. 20-09-2014 | Отправлено: 23:58 14-09-2022
Grishanenko

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Mavrikii

Цитата:
и? не страдайте фигней

Фигней не страдаю. Но 1-2МБ css к html размером 50-100kb мне не нужны. А сохраненных страниц у меня не десять и даже не сто. Зачем мне хранить мусор, который не используется? На большинстве страниц достаточно текста с форматированием, js не нужен совсем. css крайне востребован только на форумах. Без него смотрится ужасно.
 

Цитата:
все, что вы упоминаете, соответствует невалидному css

Вот именно. Хороший повод передать еще один привет "сайтописателям" (упаковщики ведь не виноваты?).

Всего записей: 719 | Зарегистр. 17-06-2006 | Отправлено: 00:14 15-09-2022
Kero1



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Mavrikii

Цитата:
для уменьшения количества запросов и сжатия данных в одном файле.  
вот только эти упаковщики недопонимают, а точнее аффторы этих упаковщиков что такие файлы очень тяжелы для распаковки браузером. Надо понимать что не все используют дополнительный гп для высчитывания всего этого овна. Браузер виснет на секунды или даже десятки секунд, а цп загоняется до 100%.

Всего записей: 2453 | Зарегистр. 23-08-2011 | Отправлено: 06:35 13-10-2023
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Kero1

Цитата:
секунды или даже десятки секунд,  

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

Всего записей: 15108 | Зарегистр. 20-09-2014 | Отправлено: 09:32 13-10-2023
Открыть новую тему     Написать ответ в эту тему

Компьютерный форум Ru.Board » Интернет » Web-программирование » Очистка css-файлов для чайников (втч Windows XP и без .Net)


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru