Rumah > hujung hadapan web > tutorial css > Mengapa `text-decoration: none;` CSS Saya Tidak Mengatasi Elemen Bersarang?

Mengapa `text-decoration: none;` CSS Saya Tidak Mengatasi Elemen Bersarang?

DDD
Lepaskan: 2024-12-29 17:30:11
asal
471 orang telah melayarinya

Why Doesn't My CSS `text-decoration: none;` Override Nested Elements?

Menyelesaikan masalah Penggantian hiasan teks CSS

Kebimbangan anda mengenai kod CSS anda tidak mengatasi sifat hiasan teks adalah cabaran biasa yang dihadapi oleh ramai pengaturcara. Mari kita selami isu ini dan cari penyelesaian.

Kunci untuk memahami isu ini terletak pada gelagat hiasan teks, yang berbeza daripada sifat berkaitan fon lain seperti berat fon. Apabila digunakan, hiasan teks mempengaruhi semua elemen bersarang, tanpa mengira kekhususannya. Ini dijelaskan dalam spesifikasi W3C:

Text decorations on inline boxes are drawn across the entire element, going across any descendant elements without paying any attention to their presence.
Salin selepas log masuk

Dalam kod anda, hiasan teks: tiada; peraturan, yang sepatutnya menghalang garis bawah, digunakan pada elemen li dengan kelas u. Walau bagaimanapun, kerana hiasan teks mempengaruhi elemen bersarang juga, garis bawah kekal dalam elemen li bersarang dengan kelas u.

Untuk menyelesaikan isu ini, anda boleh menggunakan gabungan kekhususan CSS dan bersarang:

ul > li {
    text-decoration: none;
}
ul > li.u {
    text-decoration: underline;
}
ul > li > ul > li {
    text-decoration: line-through; /* Apply a different line-through style */
}
ul > li > ul > li.u {
    text-decoration: underline;
}
Salin selepas log masuk

Dengan menggunakan pendekatan ini, gaya garisan digunakan pada elemen li bersarang tanpa menjejaskan elemen li luar. Sebagai alternatif, anda juga boleh menggunakan sifat warisan secara eksplisit untuk menetapkan hiasan teks untuk elemen bersarang:

ul > li > ul {
    text-decoration: inherit;
}
Salin selepas log masuk

Ingat, semasa menyelesaikan masalah CSS, memahami cara sifat berkelakuan dan peraturan kekhususan boleh membantu anda mencari yang berkesan penyelesaian.

Atas ialah kandungan terperinci Mengapa `text-decoration: none;` CSS Saya Tidak Mengatasi Elemen Bersarang?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan