Могу ли я удалить декларации размера шрифта из документа с помощью Javascript? - PullRequest
2 голосов
/ 05 июня 2011

Я хочу сделать расширение Chrome (настолько приличный и задокументированный Javascript), которое удаляет ВСЕ объявления font-size из документа.

Таблицы стилей документов:

document.styleSheets

Правила таблицы стилей:

document.styleSheets[0].rules

Объявление правила (или как их называть?):

document.styleSheets[0].rules[0].style.fontSize

Как мне удалить этот последний? Я хочу использовать стандарты браузера , поэтому не устанавливайте все на 100% . Есть ли способ удалить все стили font-size?

(Меня не волнуют встроенные стили или стили, добавленные в JavaScript.)

КСТАТИ
Кто-нибудь знает, почему .rules пусто (null) для таблицы стилей all.css переполнения стека? Там очень много стилей, и Chrome использует их. Почему я не могу получить к ним доступ в document.styleSheets?

Ответы [ 3 ]

2 голосов
/ 05 июня 2011

Я не думаю, что это возможно, потому что вы не можете получить доступ к правилам таблицы стилей, загруженным из другого домена.Это ограничение безопасности аналогично политике AJAX с аналогичным происхождением .

2 голосов
/ 05 июня 2011

Как насчет внедрения пользовательских css через манифест и переопределение размеров шрифта до значений по умолчанию:

* {font-size:1em !important;}
h1 {font-size:2em !important;}
h2 {font-size:1.5em !important;}
h3 {font-size:1.17em !important;}
h5 {font-size:.83em !important;}
h6 {font-size:.67em !important;}

Таблица стилей агента пользователя не объявляет размеры для многих элементов, в основном только для заголовков.Я не смог найти точную таблицу стилей по умолчанию для Chrome, но здесь несколько из других браузеров, должно быть что-то очень похожее.

0 голосов
/ 05 июня 2011
  1. Попробуйте установить его на ничто = ''
  2. Попробуйте установить значение null
  3. Вы можете попробовать функцию javascript delete: http://www.openjs.com/articles/delete.php
...