Поиск…


замечания

Интерфейсы, подробно описанные здесь, были введены в DOM Level 2 Style , который вышел примерно в то же время, что и DOM Level 2 Core, и поэтому считается «частью DOM версии 2».

Чтение и изменение встроенных стилей

Встроенный стиль

Вы можете манипулировать встроенным стилем CSS элемента HTML, просто прочитав или изменив его свойство style .

Предположим, что следующий элемент:

<div id="element_id" style="color:blue;width:200px;">abc</div>

С помощью этого JavaScript применяется:

var element = document.getElementById('element_id');

// read the color
console.log(element.style.color); // blue

//Set the color to red
element.style.color = 'red';

//To remove a property, set it to null
element.style.width = null;
element.style.height = null;

Однако, если width: 200px; были установлены во внешней таблице стилей CSS, element.style.width = null не повлияет. В этом случае, чтобы сбросить стиль, вы должны установить его в initial : element.style.width = 'initial' .

Чтение и изменение стилей из таблицы стилей

element.style только считывает свойства CSS, заданные inline, как атрибут элемента. Однако стили часто устанавливаются во внешней таблице стилей. С фактическим стилем элемента можно обращаться с помощью window.getComputedStyle(element) . Эта функция возвращает объект, содержащий фактическое вычисленное значение всех стилей.

Подобно примеру чтения и изменения встроенных стилей, но теперь стили находятся в таблице стилей:

<div id="element_id">abc</div>
<style type="text/css">
    #element_id {
        color:blue;
        width:200px;
    }
</style>

JavaScript:

var element = document.getElementById('element_id');

// read the color
console.log(element.style.color); // '' -- empty string
console.log(window.getComputedStyle(element).color); // rgb(0, 0, 255)

// read the width, reset it, then read it again
console.log(window.getComputedStyle(element).width); // 200px
element.style.width = 'initial';
console.log(window.getComputedStyle(element).width); // 885px (for example)


Modified text is an extract of the original Stack Overflow Documentation
Лицензировано согласно CC BY-SA 3.0
Не связан с Stack Overflow