Отключить системный стиль для элементов ввода формы Firefox

13

Я использую темную тему в Lubuntu под названием Dorian . Я вполне доволен этим. Тем не менее, Firefox, похоже, наследует определенные системные цвета для своих элементов ввода формы, что делает их очень трудными для просмотра.

Например:

Пример флажков Пример кнопок

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

Я могу представить решение этой проблемы несколькими способами:

  1. Добавьте пользовательскую таблицу стилей для Firefox, чтобы отменить изменения. (Я использую Стильный , так что это легко реализовать. Однако CSS с элементами формы кажется хитрым.)
  2. Модификации Дориана (я думаю, вы можете настроить тему GTK для конкретных программ.)
  3. Отключите дополнение Firefox для Ubuntu-Firefox-модификаций .
  4. Найдите настройку в Firefox, чтобы предотвратить загрузку системных цветов для элементов ввода.
  5. Установите Дориан Тема для Firefox . (Я не хочу этого, так как Дориан не обновляется активно, а Firefox постоянно.)

Конечно, я также приветствую другие решения, о которых я не думал.

sondra.kinsey
источник
Число рейнольдса «Однако CSS с элементами формы кажется сложным», вы можете получить руководство, щелкнув правой кнопкой мыши на проблемных элементах и ​​выбрав «Inspect Element» в контекстном меню.
ДК Бозе

Ответы:

19

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

В Firefox 60 есть более простое решение. Перейти about:configи установить следующее строковое значение: widget.content.gtk-theme-override=Adwaita:light

(Вы должны щелкнуть правой кнопкой мыши и выбрать New -> String. Поиск gtk-theme-overrideничего не найдет, потому что настройки по умолчанию нет.)

Благодарим Мартина Странски: https://bugzilla.mozilla.org/show_bug.cgi?id=1283086#c7

Джон Линдгрен
источник
3
В отличие от многих настроек Firefox, мне пришлось перезапустить Firefox, чтобы это вступило в силу. Так что не волнуйтесь, если это не вступит в силу сразу. Работает отлично, хотя!
Брайан Хед
Пользователи KDE могут установить это значение для имени темы KDE, например, "breeze" или "oxygen".
Пистос
3

Вы можете попробовать расширение « Контраст текста для темных тем» .

Кроме того, это старое CSS-решение все еще работает, хотя, вероятно, это то, что вы используете сейчас.

Redsandro
источник
Вторая ссылка («CSS-решение») больше не работает. Не могли бы вы рассказать о CSS-решении? Можно ли изменить глобальную таблицу стилей пользовательского агента Firefox без использования расширений?
Майкл Мартин-Смукер
Извините, я не знаю. Я переключился на Chrome, потому что время от времени находил стиль Firefox странным, особенно на темном рабочем столе.
Редсандро
1
Мне это нравится, потому что это позволяет мне выбирать, для каких сайтов я хочу использовать стандартные цвета
smac89
2

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

Я исследовал параметр CSS и нашел это объяснение установки пользовательских стилей по умолчанию без необходимости каких-либо расширений браузера. Резюме:

  1. Вашему профилю Firefox понадобится userContent.cssфайл в нужном месте. Вы можете создать это так:

    • Измените каталоги на свой профиль Firefox:
      cd ~/.mozilla/firefox/<your profile>/
    • Создайте каталог "chrome", если он не существует
      mkdir chrome
    • Создайте файл CSS в этом новом каталоге
      touch chrome/userContent.css
  2. Отредактируйте вновь созданный userContent.cssфайл, включив в него базовые стили, которые вы хотите применить ко всем страницам.

  3. Перезапустите Firefox, чтобы увидеть изменения.

Для начала я добавил это в свой файл CSS:

input, textarea {
  background-color: #fff;
  color: #222;
}

Это предполагает некоторое знакомство с CSS. Если это ново для вас, это говорит:

  • Найти все из inputи textareaэлементов на странице
  • Сделайте фон белым ( #fffэто шестнадцатеричный код для белого)
  • Сделать цвет текста темно-серым ( #222)

Есть множество других элементов, которые вы, возможно, захотите стилизовать, например, buttonи select, и вы можете получить более конкретную информацию с помощью своих вводов, например input[type=checkbox].

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

Майкл Мартин-Смукер
источник