Как изменить внешний вид страницы в браузере с помощью Greasemonkey

Пост опубликован в блогах iXBT.com, его автор не имеет отношения к редакции iXBT.com
| Обзор | Оффтопик
Началось все с ворчания, типа раньше вода была мокрее шрифты были красивее. Ворчание было по поводу того, как отображаются текстовые элементы оформления на нашем новоиспеченном долгострое проекте iБлоги. Моя особенность заключается в том, что я люблю четкие и аккуратно прорисованные буковки, поэтому всегда в системе первым делом отключаю совершенно с моей точки зрения идиотскую функцию ClearType. Вот к примеру, фрагмент до отключения ClearType (для наглядности увеличено):
ClearType включено
Не, ну может кому нравятся размытые очертания букв с цветными каемками. Мне нет. Отключаю ClearType, получаю следующее:
ClearType выключено
Уже лучше, но линии букв местами слишком толстые, некрасиво. Проблема в том, что наш дизайнер решил использовать новомодный шрифт «Roboto Condensed», в котором нет оптимизации попиксельной прорисовки, он рассчитан на масштабирование и сглаживание средствами системы. Во время слегка бурного обсуждения проблемы (он же Михаил Панюшкин) посоветовал использовать Greasemonkey. Это дополнение для Firefox, которое после загрузки страницы запускает заданные пользователем скрипты, которые могут менять внешний вид страницы. После установки Greasemonkey в панели инструментов появляется рожица и все, больше ничего не происходит. Ладно, нажимаем на стрелочку рядом с рожицей и в выпадающем меню выбираем пункт «New User Script...»:
Меню
В окне заполняем хотя бы первые две позиции:
Жмем OK и в открывшееся окно редактора вставляем следующий текст: // ==UserScript== // @name Force Verdana font // @namespace ivan@ivanov.com // @version 1 // @grant none // ==/UserScript== console.log(«Change fonts to Verdana!»); fontFamily = «Verdana»; blocks = ['sans', 'inputtext', 'span', 'p', 'a', 'div']; document.body.style.fontFamily = fontFamily; for (index = 0; index < blocks.length; index++) { elements = document.getElementsByTagName(blocks[index]); for(i = 0; i < elements.length; i++) { elements[i].style.fontFamily = fontFamily; } } За основу этого скрипта был взят скрипт с этой страницы. К сожалению, в исходном тексте была ошибка и какое-то время ушло на выяснение этого момента (на чем редко пишешь, быстро забывается). В итоге родился приведенный выше текст.
Текст скрипта
Смысл этого скрипта в том, что он в избранных тегах принудительно устанавливает «правильный» шрифт Verdana (ну и выводит в консоль предупреждение). Эти теги задаются в массиве blocks, и далее они перебираются с заменой свойства стиля fontFamily. В итоге после загрузки страницы даже с отключенным сглаживанием она приобретает более-менее пристойный вид:
Да, не совсем такой, как задумывал дизайнер, но такой, которых хочет иметь пользователь. Заметим, что избранный скрипт или Greasemonkey можно оперативно отключать/включать, задавать фильтры для для выбора страниц, на которых будут запускаться те или иные скрипты Greasemonkey, и, разумеется, никто не мешает выбрать свой любимый шрифт или задавать другие правила замены шрифтов (например, заменять только конкретный шрифт), для этого достаточно написать свой скрипт или подправить приведенный в данной заметке. В общем, приятного всем браузинга!
Автор не входит в состав редакции iXBT.com (подробнее »)

2 комментария

Добавить комментарий

mpanius
Да многое можно сделать. Удивительно, что так мало людей об этом знают.
s
На некоторых сайтах колдовство над стилями может быть полезно.

Добавить комментарий

Сейчас на главной

Новости

Публикации

Как пуск Волжской ГЭС в 1958 году сократил естественные нерестилища осетра на 85%

31 октября 1958 года строители перекрыли русло Волги створом гидроэлектростанции под Сталинградом (ныне Волгоград), изолировав от Каспийского бассейна 3 000 га естественных галечных нерестилищ...

Почему выдры не стали цирковыми артистами, хотя их действительно дрессировали для шоу

В 1972 году американская газета писала о центре в Хот-Спрингс, где готовили животных для сцены. Там были морские львы, пингвины и выдры. Про выдр сообщали конкретные вещи. Одна выходила на сцену с...

Наследник ГАЗ-24 из Китая: реальные плюсы и скрытые проблемы седана Volga C50

У Volga C50 есть важное преимущество перед большинством новых моделей: её донор уже успел попасть к владельцам, а значит, ждать несколько лет для первых выводов не обязательно. Основные особенности...

Что подарить педагогу на День учителя 2026 года: 10 идей до 2000 рублей вместо цветов, конфет и кружек

  • Тематическая подборка
  • Оффтопик
Кружка с надписью «Лучшему учителю», коробка конфет и букет — набор, который сложно назвать неожиданным. За несколько лет работы в школе таких подарков может накопиться немало, поэтому...

Почему могилу Чингисхана не могут найти почти 800 лет: спутники просеяли 6000 км², но тайна осталась нераскрытой

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

Жизнь на спутнике Сатурна Энцеладе найти проще, чем считалось: бурить лёд не придется

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