Стилі браузера за замовчуванням визначені в таблиці стилів його агентських агентів, джерела яких ви можете знайти тут . На жаль, специфікація Cascading and Inheritance 3 рівня, схоже, не пропонує способу відновити властивість стилю до стандартного браузера. Однак є плани знову ввести ключове слово для цього на рівні каскадного і спадкового рівня 4 - робоча група просто ще не визначилася з назвою цього ключового слова (посилання на даний момент говорить revert
, але воно не є остаточним). Інформацію про підтримку браузера revert
можна знайти на сайті caniuse.com .
Хоча специфікація рівня 3 вводить initial
ключове слово , встановлення властивості для його початкового значення скидає його на значення за замовчуванням, як визначено CSS , а не як визначено браузером . Початкове значення display
- inline
; це вказано тут . initial
Ключове слово відноситься до цього значення, а НЕ браузер по замовчуванням. Специфікація сама робить цю примітку під all
властивістю :
Наприклад, якщо автор вказує all: initial
на елемент, він блокує всі успадкування та скидає всі властивості, як ніби правила не з’являються на рівнях автора, користувача чи агента користувача-каскаду.
Це може бути корисно для кореневого елемента "віджета", який міститься на сторінці, який не бажає успадковувати стилі зовнішньої сторінки. Однак зауважте, що будь-який стиль "за замовчуванням", застосований до цього елемента (наприклад, наприклад, display: block
із таблиці стилів UA на блокових елементах, таких як <div>
), також буде видуто.
Тому я здогадуюсь, що єдиний спосіб використання чистого CSS зараз - це пошук за замовчуванням для браузера та встановлення його вручну:
div.foo { display: inline-block; }
div.foo.bar { display: block; }
(Альтернативою вищесказаному було б div.foo:not(.bar) { display: inline-block; }
, але це передбачає зміну вихідного селектора, а не переопрацювання.)
unset
.