Внедрение строки CSS в качестве новой таблицы стилей документа - PullRequest
4 голосов
/ 01 ноября 2011

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

var css = '.newstyle { margin: 20px; } .newstyle2 { margin: 20px; }';
$('iframe').contents().find('head').append('<style type="text/css">'+css+'</style>');

К сожалению, IE7 не нравится этот метод.Я не уверен, как еще подойти к этой инъекции.Есть ли кросс-браузерное решение, которое позволит мне вводить массу CSS из строки?

1 Ответ

2 голосов
/ 01 ноября 2011

Вы можете использовать document.stylesheets для этой цели. Это дает вам доступ к таблицам стилей на странице.

Проверьте эту статью: http://kentbrewster.com/creating-dynamic-stylesheets/ - Он немного старше и не ориентирован на jQuery, но я уверен, что вы можете настроить его под свои нужды. Я использовал эту технику несколько лет назад, и я считаю, что она немного подействовала во всех браузерах.

Вот немного больше информации о свойстве stylesheets:

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