@korner-brazers

Как получить список стилей и свойств элемента?

Собственно есть элемент и нужно получить какие стили были ему заданы через обычный css файл? знаю есть obj.style и .getComputedStyle()

Когда знаешь что искать то нет проблем, но проблема что я не знаю какие там стили прописаны у элемента и мне нужно получить список и свойства тех которые задействованы в элементе, это вообще реально? а то не как не могу найти)
  • Вопрос задан
  • 3483 просмотра
Пригласить эксперта
Ответы на вопрос 3
nurise
@nurise
Front-end, WordPress, Design
Результат
К сожалению, свойство getDefaultComputedStyle работает только в Firefox, так что и пример будет работать только там.
Возможно, сможете найти другое решение.
Ответ написан
Комментировать
Можно кое что придумать если воспользоваться свойством styleSheets объекта document:
HTML:
<div class="wrapper"></div>
CSS:
.wrapper {
  color: red;
  width: 100%;
  margin-top: 10px;
}

function getStyle(className) {
    var classes = document.styleSheets[0].rules || document.styleSheets[0].cssRules;
    for (var x = 0; x < classes.length; x++) {
        if (classes[x].selectorText == className) {
            (classes[x].cssText) ? alert(classes[x].cssText) : 		alert(classes[x].style.cssText);
        }
    }
} 

getStyle('.wrapper');

Результатом будет строка:
.wrapper { color: red; width: 100%; margin-top: 10px; }

Рабочий пример.
Ответ написан
Комментировать
@chizhenkov
список назначенных на текущий момент стилей в виде строки лежит в свве className элемента. т.е. просто берете element.className и разбиваете по словам в массив.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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