Существует ли (polyfill) код, который сбрасывает все унаследованные свойства CSS для данного элемента? - PullRequest
1 голос
/ 14 ноября 2011

Субъект говорит все это. Ищите (polyfill) код, который будет сбрасывать все унаследованные свойства CSS для данного элемента (например, <img>, <a> или <p>).

Ответы [ 4 ]

2 голосов
/ 14 ноября 2011

Что вы можете сделать, это создать один из этих элементов, но не присоединять его к DOM. Тогда он не получит ни одного из стилей из ваших таблиц стилей. Затем, используя window.getComputedStyle, вы получите список стилей по умолчанию.

var a = document.createElement('a');
var s = window.getComputedStyle(a);

myTargetEl.style.color = s.color;  // or, use a loop to do all of them
1 голос
/ 17 августа 2016

Если вы хотите полностью сбросить все до стилей браузера по умолчанию, то современный подход CSS заключается в использовании ключевого слова revert со свойством all:

all: revert;

С MDN,

CSS-ключевое слово revert откатывает каскад, так что свойство принимает значение, которое было бы, если бы в текущем стиле не было стилейпроисхождение (автор, пользователь или пользовательский агент).В таблицах стилей автора (в обычном случае) для целей данного объявления это выглядит так, как если бы не было стилей на уровне автора, поэтому для свойства устанавливается значение по умолчанию, установленное таблицей стилей агента пользователя (или пользовательскими стилями, еслилюбой существует).

Предупреждение: Он определен в Каскадном и наследуемом уровне CSS 4 , так что поддержка браузера в настоящее время ограничен только Safari.

1 голос
/ 17 июня 2014

Это похоже на свойство all, которое, к сожалению, еще не реализовано ни одним браузером, кроме Firefox.

Пример:

h2 {
  all: initial; // Will reset any style set for h2 elements
}

См. https://developer.mozilla.org/en-US/docs/Web/CSS/all

1 голос
/ 14 ноября 2011

Может быть, вы можете использовать HTML5 boilerplate или css Reset для сброса всех унаследованных свойств CSS.

проверить эти статьи http://html5boilerplate.com/,

http://meyerweb.com/eric/thoughts/2007/05/01/reset-reloaded/

...