Я бы хотел взять мой DOM, как есть, и преобразовать его в строку. Скажем, я открываю инспектора и вношу изменения в свойство margin-left определенного элемента. Это изменение должно быть отражено в моей строке.
Функция должна должным образом принимать все стили, применяемые в данный момент к элементу (исключая значения по умолчанию) и включать их в встроенный стиль для этого элемента.
Я написал "решение", которое оказалось неадекватным. Функция getMatchedCSSRules
в webkit чрезвычайно полезна, и я не мог определить, почему она иногда работает и не работает в другие времена. Поэтому я хотел бы избежать использования этой функции, если она не работает в 100% случаев. Аналогично, функция getComputedStyle
имеет свои проблемы. Если вы используете инспектор, чтобы изменить элемент #footer на этой странице 7px solid red
, а не 7px solid black
, это изменение будет отражено при запуске getComputedStyle(document.getElementById('footer')).cssText
в консоли, но это также даст мне множество унаследованных свойства, которые никогда не изменялись ни пользователем, использующим инспектор, ни таблицами стилей на странице.
Я ищу решение, которое работает с webkit - кросс-браузерная совместимость не является проблемой на данный момент.
Спасибо!