Возможно ли получить свойство стиля по имени класса (например, по ширине класса), определенному в файле CSS, без необходимости извлекать его из фактического элемента в DOM?Javascript/Prototype: получить значения css, не ссылаясь на элементы DOM?
ответ
Это действительно возможно, но намного сложнее.
У вас есть доступ к таблицам стилей с изображением document.styleSheets
.
В каждой таблице стилей вы должны получить доступ к cssRules собственности, которая содержит все правила CSS в этой таблице стилей, поэтому, чтобы получить первое правило в первой таблице стилей в DOM вы можете сделать
document.styleSheets[0].cssRules[0];
Чтобы найти определенный элемент, который вы должны проанализировать таблицу стилей, и это, где это получить сложно, в некоторых случаях, как стили наследуются и т.д., но если ищете определенный селектор и определенного стиля:
var rules = document.styleSheets[0].cssRules,
theRule = null;
for (var i=0; i<rules.length; i++) {
if (rules[i].selectorText.toLowerCase() == '#myelement') {
var width = rules[i].style.width;
break;
}
}
Я предполагаю, что нет способа выбрать CSS по имени из списка, кроме итерации и сопоставления имени в href, правильно? – user76568
@Dror - На самом деле, 'rules [i] .selectorText' получает текст селектора, например' # elementID' или '.class: hover' и т. Д. Следует отметить, что доступ к таблицам стилей, подобных этому, как правило, является плохим идея, и трудно получить право. – adeneo
Я имел в виду имя файла css, это то, что вы имели в виду также? – user76568
Да. Проверьте document.styleSheets
собственности.
https://developer.mozilla.org/en-US/docs/Web/API/document.styleSheets
Бог (?) Благословит вас, и спасибо! ;) – user76568
- 1. Javascript DOM элементы недействительны CSS
- 2. VBA/DOM - Получить элементы на основе атрибута
- 3. Ссылаясь на динамические элементы объекта C# 'dynamic'
- 4. ORACLE SQLLOADER, ссылаясь на вычисленные значения
- 5. Жасмин - Невозможно получить элементы DOM
- 6. CSS сосчитать все элементы в DOM
- 7. DOM элементы не отвечает на JQuery
- 8. на изменение не набирает новые элементы dom
- 9. javascript dom-injected элементы не подбирают CSS-стиль в IE
- 10. PHP DOM: Получить все текстовые значения
- 11. Ссылаясь на элементы управления конкретной записью на подформе
- 12. Хранение ссылок на элементы DOM
- 13. Получить значение css без элемента DOM
- 14. Самостоятельно ссылаясь на таблицу
- 15. CSS переход не работает на манипуляции DOM
- 16. Не удается получить CSS-элементы по центру
- 17. , ссылаясь на определенный идентификатор
- 18. Javascript: Получить типизированные значения CSS НЕ вычисленные значения
- 19. JS DOM: Получить элементы по текстовому содержимому
- 20. WrapPanel ItemsControl Ссылаясь на отдельные элементы из оригинальной коллекции
- 21. Цитирование через элементы DOM, включая элементы диапазона
- 22. Ссылаясь на программно созданные элементы пользовательского интерфейса в Android
- 23. Обнаруживать «подключенные» элементы DOM
- 24. jQuery .load() не помещает элементы в DOM
- 25. iOS, ссылаясь на «ABAddressBook.h»
- 26. Java DOM синтаксический получить только родительские элементы
- 27. Как получить элементы с веб-страницы DOM на моем background.js?
- 28. Ссылка на элементы DOM из компонента нокаута
- 29. Получить все элементы DOM в JavaScript
- 30. Получить высоту элемента DOM в LESS/CSS
Очень интересный вопрос .. Ожидание ответа – Mehmet