Apa arti dari properti gaya silang di devtools Google Chrome?

274

Saat memeriksa elemen menggunakan devtools Chrome, di tab elemen, bilah 'Gaya' di sebelah kanan menunjukkan properti CSS yang sesuai. Kadang-kadang, beberapa dari sifat-sifat ini disentuh. Apa arti properti ini?

rohitmishra
sumber
4
Saya mengantisipasi pertanyaan ini. +1 untuk ini.
Rajesh Paul

Jawaban:

314

Ketika properti CSS ditampilkan sebagai menerobos, itu berarti bahwa gaya dicoret diterapkan, tetapi kemudian ditimpa oleh pemilih yang lebih spesifik, aturan yang lebih lokal, atau oleh properti yang lebih baru dalam aturan yang sama.

(Kasus khusus: gaya juga akan ditampilkan sebagai menerobos jika gaya ada dalam aturan yang cocok tetapi dikomentari, atau jika Anda telah menonaktifkannya secara manual dengan menghapus centang di dalam alat pengembang Chrome. Itu juga akan ditampilkan sebagai dilintasi keluar, tetapi dengan ikon kesalahan, jika gaya memiliki kesalahan sintaks.)

Misalnya, jika warna latar belakang diterapkan ke semua divs, tetapi warna latar belakang yang berbeda diterapkan untuk divs dengan id tertentu, warna pertama akan muncul tetapi akan dicoret, karena warna kedua telah menggantikannya (di properti daftar divdengan id itu).

Jacob Mattison
sumber
18
Di samping catatan, properti dicoret dapat "dibatalkan" oleh properti dengan nama yang sama kemudian dalam aturan CSS yang sama (seperti yang dipersyaratkan spesifikasi CSS.)
Alexander Pavlov
57
@ JacobM: Cara mengetahui properti mana yang menimpa properti yang dicoret.
ArunRaj
51
@ArunRaj - Tidak ada cara mudah untuk mengetahui properti (atau properti) mana yang menggantikan yang dicoret. Salah satu opsi adalah melihat pada tab gaya "dikomputasi" untuk menemukan jenis properti yang sama, dan kemudian jika Anda mengembangkannya Anda akan melihat sumber dari berbagai aturan yang mencoba menerapkan properti itu (termasuk yang benar-benar aktif) . Jadi jika Anda melihat bahwa "ukuran font: 11px" dicoret, lihat properti yang dihitung untuk "ukuran font", dan Anda akan melihat semua tempat yang menggunakan ukuran font, termasuk yang benar-benar aktif. Semoga ini membantu.
Jacob Mattison
7
Sekarang ada kotak Filter di bagian atas tab Styles. Jika Anda bertanya-tanya apa yang telah diganti border-colormaka cukup ketikkan border-colorke dalam Filter. Ini akan menunjukkan semua aturan yang mengandung properti itu, dengan properti disorot dengan warna kuning. Fitur ini juga tersedia di Firefox.
joeytwiddle
4
Juga ingin menambahkan: Jika suatu gaya muncul tetapi sudah ada di atas, maka Anda mungkin memiliki gaya CSS di suatu tempat dengan !importantyang menimpanya.
Dominic K
12

Di samping catatan. Jika Anda menggunakan @media queries (seperti @media screen (max-width:500px)) berikan perhatian khusus untuk menerapkan @media query SETELAH Anda selesai dengan gaya normal. Karena @media query akan dicoret (meskipun lebih spesifik) jika diikuti oleh css yang memanipulasi elemen yang sama. Contoh:

@media (max-width:750px){
#buy-box {width: 300px;}
}

#buy-box{
width:500px;
}

** width will be 500px and 300px will be crossed out in Developer Tools. **

#buy-box{
width:500px;
}

@media (max-width:750px){
#buy-box {width: 300px;}
}

** width will be 300px and 500px will be crossed out **
sanjihan
sumber
bagaimana jika permintaan media ada dalam file css yang berbeda?
Carlos Hernández Gil
11

Selain jawaban di atas saya juga ingin menyoroti kasus properti mogok yang benar-benar mengejutkan saya.

Jika Anda menambahkan gambar latar belakang ke div:

<div class = "myBackground">

</div>

Anda ingin skala gambar agar sesuai dengan dimensi div jadi ini akan menjadi definisi kelas normal Anda.

.myBackground {

 height:100px;
 width:100px;
 background: url("/img/bck/myImage.jpg") no-repeat; 
 background-size: contain;

}

tetapi jika Anda menukar urutan sebagai: -

.myBackground {
 height:100px;
 width:100px;
 background-size: contain;  //before the background
 background: url("/img/bck/myImage.jpg") no-repeat; 
}

kemudian di chrome Anda akan melihat ukuran latar belakang seperti dicoret. Saya tidak yakin mengapa ini, tapi ya Anda tidak ingin mengacaukannya.

Rishul Matta
sumber
8

Jika Anda ingin menerapkan gaya bahkan setelah mendapatkan indikasi melanda, Anda dapat menggunakan "!important"untuk menegakkan gaya. Ini mungkin bukan solusi yang tepat tetapi menyelesaikan masalah.

Nanda
sumber
Saya memiliki masalah untuk mengukur GoogleMap untuk ponsel di atas media. Saya memiliki pengaturan dasar untuk browser (tanpa media) diikuti oleh berbagai media dengan ukuran yang lebih kecil, apa yang tidak berfungsi (stile yang benar untuk seluler ditunjukkan di GC tetapi dengan dicoret). Setelah saya tambahkan! Penting, itu berfungsi, tapi saya tidak mengerti "logika" di baliknya ...
FredyWenger
-5

Ada beberapa kasus ketika Anda menyalin dan menempelkan kode CSS di suatu tempat dan itu memecah format sehingga Chrome menunjukkan peringatan kuning. Anda harus mencoba memformat ulang kode CSS dan harus baik-baik saja.

hien711
sumber
2
Pertanyaan itu tidak menanyakan apa pun tentang "peringatan kuning". Jawaban ini seharusnya merupakan komentar terbaik.
Simon