Вопрос был задан here о том, как копировать стили css из одного объекта в другой. И общепринятый ответ был:Как скопировать все созданные пользователем стили из одного объекта в другой
var p = document.getElementById("your_p_id");
var div = document.createElement("div");
div.innerHTML = "your div content";
div.style.cssText = document.defaultView.getComputedStyle(p, "").cssText;
Однако моя ситуация немного отличается. У меня есть сценарий, который создает span
, чтобы предположить тег select
, а затем скрывает select
. Это позволяет упростить стилизацию CSS, поскольку я могу стилизовать span
по сравнению с тегом adamant select
.
Когда я использую cssText
, чтобы скопировать любые стили, применяемые от выбора к диапазону, он выглядит как тег select. Поскольку все встроенные стили применяются также к диапазону, а не только для ввода пользователя, тогда я должен переопределить все эти свойства css десятками, что превосходит цель иметь тег span в первую очередь.
Есть ли способ копировать только созданные пользователем стили, а не всю таблицу стилей, используемую для стилирования элемента? .
До сих пор, у меня есть возможность передавать примененные стили путем передачи class
и id
от выбора, чтобы охватить, но моя задача становится стили непосредственно примененные на select
тега (т.е. в стиле/таблицы стилей, гласит: select { blah : bloh;}
)
Как применяются стили, определяемые пользователем? Использование класса? Если да, то примените тот же класс – anu
Вам нужна поддержка старого браузера? –
Вы хотите только стили из атрибута стиля? – Jarek