Gaya default browser ditentukan dalam stylesheet agen penggunanya, sumber yang dapat Anda temukan di sini . Sayangnya, spesifikasi Cascading dan Inheritance level 3 tampaknya tidak mengusulkan cara untuk mereset properti style ke default browser-nya. Namun ada rencana untuk memperkenalkan kembali kata kunci untuk ini di Cascading dan Inheritance level 4 - kelompok kerja belum menentukan nama untuk kata kunci ini (tautan saat ini mengatakan revert
, tetapi belum final). Informasi tentang dukungan browser untuk revert
dapat ditemukan di caniuse.com .
Meskipun spesifikasi level 3 memperkenalkan initial
kata kunci , menetapkan properti ke nilai awalnya akan menyetelnya kembali ke nilai defaultnya seperti yang didefinisikan oleh CSS , bukan seperti yang didefinisikan oleh browser . Nilai awal display
adalah inline
; ini ditentukan di sini . Kata initial
kunci merujuk pada nilai itu, bukan peramban bawaan. Spek itu sendiri membuat catatan ini di bawah all
properti :
Misalnya, jika seorang penulis menentukan all: initial
pada elemen itu akan memblokir semua warisan dan mengatur ulang semua properti, seolah-olah tidak ada aturan yang muncul di tingkat kaskade penulis, pengguna, atau agen pengguna.
Ini dapat berguna untuk elemen root dari "widget" yang termasuk dalam halaman, yang tidak ingin mewarisi gaya halaman luar. Perhatikan, bagaimanapun, bahwa gaya "default" apa pun yang diterapkan pada elemen tersebut (seperti, misalnya display: block
dari lembar gaya UA pada elemen blok seperti <div>
) juga akan terhapus.
Jadi saya kira satu-satunya cara saat ini menggunakan CSS murni adalah dengan mencari nilai default browser dan mengaturnya secara manual:
div.foo { display: inline-block; }
div.foo.bar { display: block; }
(Alternatif untuk yang di atas adalah div.foo:not(.bar) { display: inline-block; }
, tetapi itu melibatkan memodifikasi pemilih asli daripada menimpa.)
unset
.