@we1

Какое добавлеие CSS-стилей к HTML-странице с помощью JavaScript правильное?

Вот по этому адресу https://www.w3.org/wiki/Dynamic_style_-_manipulati... очень простое подключение стилей с помощью innerHTML:

var sheet = document.createElement('style')
sheet.innerHTML = "body{background:#eee;}";
document.body.appendChild(sheet);


Но много где пишут, что так делать неправильно, а нужно использовать createTextNode, который будет присоединен к элементу style, который подключается к head.

var sheet = document.createElement("style");
sheet.type="text/css";
var css = document.createTextNode('body{background:#eee;}');
sheet.appendChild(css);
document.getElementsByTagName('head')[0].appendChild(sheet);


Вопрос такой: На сайте w3.org действительно «вредные советы» или именно так и надо делать?
  • Вопрос задан
  • 171 просмотр
Пригласить эксперта
Ответы на вопрос 1
@4604590
JavaScript, HTML/CSS, PHP,MySQL, SuiteCRM/SugarCRM
В том что Вы написали я не вижу принципиальной разницы, кроме того, куда подключать эти самые стили. Я бы рекомендовал в head.
например так.
var sheet = document.createElement('style')
sheet.innerHTML = "body{background:green;}";
document.head.appendChild(sheet);
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы