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

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Программы » Mozilla Firefox: стили userChrome.css и скрипты js (Часть 1)
Применение пользовательских стилей и скриптов в Firefox

Модерирует : gyra, Maz

Maz (23-01-2026 14:24): Mozilla Firefox: стили userChrome.css и скрипты js (Часть 2)  Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200

   

gutasiho

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



В теме обсуждается настройка внешнего вида Firefox с использованием userChrome.css, userContent.css, а так же использование скриптов js (uc.js).

Родственные темы: Mozilla Firefox | Расширения для Firefox
 
Обсуждение на "Форуме Mozilla Россия":
Настройка внешнего вида Firefox в userChrome.css,
UCF - ваши кнопки, темы, дополнения, скрипты…
 
Темы на GitHub:
Aris-t2 CustomCSSforFx | Aris-t2 CustomJSforFx | xiaoxiaoflood/firefox-scripts | Endor8/userChrome.js | Alice0775 userChrome.js  
VitaliyV UCF - UserChromeFiles | MrOtherGuy/firefox-csshacks (known as MOG) | VicDobrov UCF-скрипты


Просьба публикуемые коды заключать в тэг [code][/code] (из выпадающего меню), а коды более 10 строк - в двойной тэг [more][code][/code][/more] Подробное разъяснение.
 
Как подключить скрипты JS:
метод Aris-t2 | метод xiaoxiaoflood | метод Endor8 | метод user_chrome_files (UCF)
Как подключить скрипты JSM, MJS в загрузчик скриптов от Aris-t2 , а если у вас Firefox v117+, то дополнительно...
 
Еще один способ активации, нюансы: скрипты можно поместить в пользовательслую папку, можно не прописывать активацию каждого скрипта отдельно.
 
Куда вписывать код для стиля userChrome.css и userContent.css
1\ Также не забываем про такую строку в user.js / prefs.js (для включения userChrome.css и userContent.css):
Код:
// Turn on userChrome.css and userContent.css support
// Включить поддержку userChrome.css и userContent.css
user_pref("toolkit.legacyUserProfileCustomizations.stylesheets", true);  
либо эту настройку включить через about:config.
2\ v136+: отключить CSP (Content Security Policy - Политика безопасности контента), снижает безопасность!:
Код:
security.browser_xhtml_csp.enabled = false
3\ v139+: если некоторые скрипты JS не работают, можете сделать так, снижает безопасность!:
Код:
security.allow_unsafe_dangerous_privileged_evil_eval = true  

Полезные ссылки
Онлайн-конвертер иконок в\из Base64
Онлайн-редактор иконок SVG
Онлайн-конвертер SVG to Data URI
Мануал по определению CSS-селекторов элементов интерфейса встроенными средствами браузера

Всего записей: 9428 | Зарегистр. 14-09-2020 | Отправлено: 08:34 29-07-2023 | Исправлено: Maz, 14:21 23-01-2026
Vitaliy977

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
alloledd
Цитата:
А как бы понять, куда какой заголовок вставлять?

ну я не в теме по userChrome.js, вроде как есть разные загрузчики, но в основном кроме оконных скриптов другие там и не предусмотрены.
Если есть заголовок  
// ==UserScript==  
бла бла
// ==/UserScript==
то нужно смотреть на  
// @include        main
если main то это "JsChrome.load" для основного окна браузера
если другое и/или несколько @include
то "JsAllChrome.load" и регулярное выражение нужно писать "urlregxp": в зависимости от значений @include
Если нет // ==UserScript==... то вроде как в самом скрипте что-то вроде этого должно быть
if (location.href === "chrome://browser/content/browser.xhtml") {
это тоже основное окно браузера
Ну и, по объектам и методам понятно где должен работать скрипт.

Всего записей: 865 | Зарегистр. 13-10-2013 | Отправлено: 18:01 26-12-2025
alloledd

Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Vitaliy977, спасибо. Так заголовки обязательны, или нет? В принципе и без них всё работает. Только если они есть, скрипт уже сразу сам подключается. Типа как бы они только для удобства?
 
 
Добавлено:
Vitaliy977, я ещё предыдущее сообщени правил по поводу СКМ в кнопке, посмотрите плиз.

Всего записей: 7809 | Зарегистр. 25-10-2019 | Отправлено: 18:09 26-12-2025 | Исправлено: alloledd, 18:26 26-12-2025
Satanachia

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
На стр. 58, нашел
Цитата:
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модераторуНовая версия: https://github.com/update692/firefox
 
-- ниже устаревший прототип ---
 
minimize-memory.uc.js
Скрипт освобождающий память браузера раз в минуту [?]
Интервал задается числом внизу. Действие аналогично нажатию кнопки Minimize memory usage на вкладке about:memory

Кто пользовался? Работает?

Всего записей: 1319 | Зарегистр. 22-10-2012 | Отправлено: 18:15 26-12-2025
Vitaliy977

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
alloledd
Цитата:
Типа как бы они только для удобства?

Ну конечно, если кто то напишет скрипт и потом будет каждому разжевывать как подключить скрипт в настройках?! Дело такое себе.

Цитата:
я ещё предыдущее сообщени правил по поводу СКМ в кнопке

Не по кнопке, СКМ по пункту в меню очищает только конкретный пункт, а для всей истории есть отдельный пункт.
 
 

Всего записей: 865 | Зарегистр. 13-10-2013 | Отправлено: 18:41 26-12-2025 | Исправлено: Vitaliy977, 18:42 26-12-2025
alloledd

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

Цитата:
Ну конечно, если кто то напишет скрипт и потом будет каждому разжевывать как подключить скрипт в настройках?! Дело такое себе.

Ну это в корне меняет дело.)

Цитата:
Не по кнопке, СКМ по пункту в меню очищает только конкретный пункт, а для всей истории есть отдельный пункт.  

А точно, спасибо. По каждому пункту я не сообразил жмякать.
А как бы ещё эту кнопку подружить с компактным Findbar? А то в нём вместо кнопки просто пустоё место, и только при наведение появляется квадрат другого цвета.
Подробнее...

Всего записей: 7809 | Зарегистр. 25-10-2019 | Отправлено: 18:57 26-12-2025
Death_INN

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

Цитата:
регулярное выражение нужно писать "urlregxp": в зависимости от значений @include

Лучше реализовать в виде массива или по выбору - кому как удобнее

Всего записей: 4155 | Зарегистр. 24-10-2002 | Отправлено: 19:12 26-12-2025 | Исправлено: Death_INN, 19:15 26-12-2025
gutasiho

Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Satanachia
Цитата:
minimize-memory.uc.js
Скрипт освобождающий память браузера раз в минуту
Интервал задается числом внизу. Действие аналогично нажатию кнопки Minimize memory usage на вкладке about:memory
 
Кто пользовался? Работает?
Запустите в консоли, и узнаете. На самом деле это игрушка, ненужная. Сделайте закладку на about:memory и пользуйтесь, но особого смысла нет.

Всего записей: 9428 | Зарегистр. 14-09-2020 | Отправлено: 19:13 26-12-2025
Death_INN

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

Цитата:
На самом деле это игрушка, ненужная

Ну как ты знаешь, есть еще скрипт Memory Indicator. Вот у меня когда брауз потребляет более 3 гигов, то начинает тупить, а по индикатору сразу видно почему

Всего записей: 4155 | Зарегистр. 24-10-2002 | Отправлено: 19:18 26-12-2025
Vitaliy977

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
alloledd
Цитата:
А как бы ещё эту кнопку подружить с компактным Findbar? А то в нём вместо кнопки просто пустоё место, и только при наведение появляется квадрат другого цвета.  

Потому что текст то скрыт в компакт Findbar
    --v-findbar-toolbarbutton-text-display: none; /* -moz-box - показать текст на кнопках */
(кстати -moz-box устарел замените в стиле на flex, и :-moz-lwtheme устарел но то неважно если все устраивает)
а в скрипте это не иконка а текст
menu.setAttribute("label", "▽");
добавьте иконку
menu.setAttribute("label", "бла бла");
menu.setAttribute("image", "imageURL");
 
Death_INN
Цитата:
Лучше реализовать в виде массива или по выбору - кому как удобнее

Да можно добавить доп. параметр например urlarray, но urlregxp будет предпочтительным
if (urlregxp) regxp  
else if (urlarray) array

Всего записей: 865 | Зарегистр. 13-10-2013 | Отправлено: 22:22 26-12-2025
grom17



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

Цитата:
(кстати -moz-box устарел замените в стиле на flex, и :-moz-lwtheme устарел

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

Всего записей: 1758 | Зарегистр. 12-10-2002 | Отправлено: 22:46 26-12-2025
unter_officer



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

Цитата:
...а где можно подробней узнать о таких заменах

Например здесь: https://bugzilla.mozilla.org/show_bug.cgi?id=1820744#c1

----------
«The Truth Is Out There»

Всего записей: 373 | Зарегистр. 03-08-2008 | Отправлено: 22:59 26-12-2025
alloledd

Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Vitaliy977
Цитата:
добавьте иконку
menu.setAttribute("label", "бла бла");
menu.setAttribute("image", "imageURL");

А можно как-то подробнее, а то чего-то у меня не получается вставить?
А всё, получилось, вставил. Спасибо большое.

Всего записей: 7809 | Зарегистр. 25-10-2019 | Отправлено: 23:23 26-12-2025 | Исправлено: alloledd, 23:48 26-12-2025
Andrewnews

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Vitaliy977 хотел у Вас спросить возможно ли в Вашей скрипте Sidebar Tabs сделать заголовки в 2 строчки. Я добавил свои пункты и у меня ширина стала очень большая. Я для себя выход нашел, вместо label поставил эмодзи  или может быть вместо label использовать иконки?
И второе некоторые пишут // @include   *,  тогда вообще не понятно и приходится экспериментировать.

Всего записей: 91 | Зарегистр. 06-10-2008 | Отправлено: 23:24 26-12-2025 | Исправлено: Andrewnews, 23:35 26-12-2025
Vitaliy977

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Andrewnews
Цитата:
возможно ли в Вашей скрипте Sidebar Tabs сделать заголовки в 2 строчки

попробуйте стилем что из этого получится, перенос должен быть по whitespace

Код:
#st_tabs label[value]::before {
    white-space: normal !important;
    max-height: 2.5em !important;
    line-height: 1.25em !important;
    overflow: clip !important;
}


Цитата:
И второе некоторые пишут // @include   *,  тогда вообще не понятно

Ну тут все просто, это скорее всего значит что нужно загружать скрипт везде где может загрузчик,
тогда просто не добавлять urlregxp и скрипт загрузится во все окна.

Всего записей: 865 | Зарегистр. 13-10-2013 | Отправлено: 00:44 27-12-2025 | Исправлено: Vitaliy977, 00:49 27-12-2025
Satanachia

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
gutasiho
Именно вы выложили ссылки на эти скрипты и сами же не рекомендуете.
Если бы я мог это делать
Цитата:
Запустите в консоли, и узнаете. На самом деле это игрушка, ненужная. Сделайте закладку на about:memory и пользуйтесь, но особого смысла нет.
, то и не просил бы помощи. Как вы не поймете Уважаемый, я не умею ничего этого. Для меня это, равноценно вашему предложению на Китайском
在控制台運行一下你就會發現

Всего записей: 1319 | Зарегистр. 22-10-2012 | Отправлено: 05:22 27-12-2025 | Исправлено: Satanachia, 05:29 27-12-2025
Satanachia

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Уважаемый Vitaliy977! Ранее задал вопрос, новидимо не совсем корректно.
Есть такое замечательное расширение для старых версий FF, Simple Mail. Возможно ли создать что то подобное для проверки почты с разных ящиков, силами скриптов?

Всего записей: 1319 | Зарегистр. 22-10-2012 | Отправлено: 09:42 27-12-2025
gutasiho

Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Death_INN
Индикатор у меня тоже есть, но выполняет чисто дизайнерские функции, чтоб циферки показывали, т.к. реальной необходимости сброса ни разу не возникало. Если что, воспользуюсь нативной функцией сброса в about:memory.
Satanachia
Цитата:
Именно вы выложили ссылки на эти скрипты и сами же не рекомендуете.
"Выложил" не является синонимом для "рекомендуется" или "использую", а "рекомендуется" не равнозначно "использовать объязательно". К стыду гугла, он тоже ниччего не знает по поводу консоли в Firefox, ай-яй-яй. А если не можете сделать "закладку на about:memory", то я лучше красноречиво промолчу. И про поиск по ключевому слову в "версии для печати" тоже.

Всего записей: 9428 | Зарегистр. 14-09-2020 | Отправлено: 09:50 27-12-2025
Satanachia

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Закладку сделать я могу конечно gutasiho, но речь не об этом собсно. Не все вумные и пользоваться консолью не умеют. Я вообще не понимаю вас Уважаемый! То помогаете по человечески, то постоянно в дерьмо окунаете человека. Нельзя же так.
Судя по началу топика, вы тоже далеко не гуру были, зачем тыкать в нос человеку, который в силу своего возраста и образования, не способен освоить, такие стыдные вещи как консоль.
Поиском по ключевому, вы реально достали уже. Я пролистал топик, почти весь. Что нашел (кстати многое от вас, в том числе и ссылки на скрипты с коих все и началось тут), то использую или спрашиваю. Вот только в ответ на вопросы, не всегда адекватные ответы получаю. Некрасиво так делать.
Не хотите помочь, лучше проигнорируйте вопрос.

Всего записей: 1319 | Зарегистр. 22-10-2012 | Отправлено: 10:20 27-12-2025
alloledd

Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Вот понравился скрипт tabProtect_mod2.uc.js Если вкладки им заблокировать, то их закрыть невозможно, пока не снимешь блокировку. А если их ещё и закрепить, то нужные сайты всегда будут под рукой, для меня очень удобно. Только иконку там в настройках надо отрегулировать, чтоб по центру не маячила.

Всего записей: 7809 | Зарегистр. 25-10-2019 | Отправлено: 10:49 27-12-2025 | Исправлено: alloledd, 10:50 27-12-2025
avtv

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Кнопка Меню закладок. Можно ли убрать первые три пункта и разделитель, а в четвертом (Панель закладок) убрать Показать панель закладок с разделителем?

Всего записей: 193 | Зарегистр. 03-09-2022 | Отправлено: 11:24 27-12-2025
   

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200

Компьютерный форум Ru.Board » Компьютеры » Программы » Mozilla Firefox: стили userChrome.css и скрипты js (Часть 1)
Maz (23-01-2026 14:24): Mozilla Firefox: стили userChrome.css и скрипты js (Часть 2)


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

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

LiteCoin: LgY72v35StJhV2xbt8CpxbQ9gFY6jwZ67r

Рейтинг.ru