informasi kontak saya
Surat[email protected]
2024-07-12
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
Bahasa Inggris Pemilih gaya, digunakan untuk memilih elemen html di halaman untuk menambahkan gaya CSS.
Urutkan berdasarkan performa rendering dari tinggi ke rendah Diikuti oleh:
PENGENAL Pemilih
#id
Pilih elemen berdasarkan atribut idnya, peka huruf besar-kecil
<p id="p1" >第一段</p>
#p1{
color: red;
}
Namun penggunaannya tidak dianjurkan karena:
pemilih kelas
.class
Melalui atribut kelas elemengayaNama kelas elemen yang dipilih peka huruf besar-kecil
Pemilih CSS yang paling direkomendasikan adalah pemilih kelas memiliki semantik yang kuat dan gaya yang mudah diatur ulang.
<span class="important" >重点词汇</span>
.important{
color: red;
font-weight: bold;
}
Beberapa kelas gaya dapat ditambahkan ke elemen yang sama, dipisahkan oleh spasi.
<span class="important big" >巨大的重点词汇</span>
.important {
color: red;
font-weight: bold;
}
.big {
font-size: 60px;
}
pemilih tag
标签名
Pilih elemen berdasarkan nama tagnya, tidak peka huruf besar-kecil
<a href="https://www.baidu.com/" target="_blank" >百度</a>
a {
text-decoration: none; /* 无文本装饰(消除默认的下划线) */
}
Tidak disarankan karena kinerja pemilih tag yang buruk dan biaya pemeliharaan yang tinggi
pemilih karakter pengganti
*
Pilih semua elemen html di halaman kecuali elemen semu. Ini sering digunakan untuk menghapus gaya default browser, namun tidak disarankan karena menghabiskan kinerja.
/* 清除所有html标签默认的外边距和内边距 */
* {
margin: 0;
padding: 0;
}
pemilih atribut
[属性]
Pilih elemen berdasarkan atribut dan nilai atributnya. Atribut tidak peka huruf besar-kecil, dan nilai atribut peka huruf besar-kecil.
pemilih atribut | menggambarkan |
---|---|
[atribut] | Digunakan untuk memilih elemen dengan atribut tertentu. |
[atribut=nilai] | Digunakan untuk memilih elemen dengan atribut dan nilai tertentu. |
[atribut~=nilai] | Digunakan untuk memilih elemen yang nilai atributnya mengandung kosakata tertentu. Sangat cocok untuk skenario yang berisi beberapa kombinasi nilai atribut. |
[atribut|=nilai] | Nilai atribut dimulai dengan pemilih fragmen, nilainya harus berupa kata utuh. |
[atribut^=nilai] | Mencocokkan setiap elemen yang nilai atributnya dimulai dengan nilai yang ditentukan. |
[atribut$=nilai] | Mencocokkan setiap elemen yang nilai atributnya diakhiri dengan nilai yang ditentukan. |
[atribut*=nilai] | Mencocokkan setiap elemen yang nilai atributnya berisi nilai yang ditentukan. |
Pemilih kelas semu
:状态名
Pilih elemen berdasarkan statusnya yang berbeda
同一个标签,不同的状态,有不同的样式,就叫做“伪类”
Pemilih kelas semu | contoh | Contoh deskripsi |
---|---|---|
:aktif | a:aktif | Pilih tautan aktif. (Ketika mouse mengklik label tetapi tidak melepaskannya) |
:sudah diperiksa | masukan:diperiksa | Pilih setiap yang dipilih<input> elemen. |
:dengan disabilitas | masukan:dinonaktifkan | Pilih masing-masing dinonaktifkan<input> elemen. |
:kosong | p:kosong | Pilih setiap elemen yang tidak memiliki elemen turunan<p> elemen. |
:diaktifkan | masukan:diaktifkan | Pilih masing-masing diaktifkan<input> elemen. |
:anak pertama | p:anak pertama | Memilih setiap elemen yang merupakan anak pertama dari induknya<p> elemen. |
:yang pertama dari jenisnya | p:pertama-dari-jenis | Pilih yang pertama sebagai induknya<p>elemen masing-masing<p> elemen. |
:fokus | masukan:fokus | Pilih salah satu yang mendapat fokus<input> elemen. |
:arahkan kursor | a: arahkan kursor | Pilih tautan yang Anda arahkan mouse. |
:dalam lingkup | masukan:dalam jangkauan | Memilih nilai dengan rentang tertentu<input> elemen. |
:tidak sah | masukan:tidak valid | Pilih semua dengan nilai yang tidak valid<input> elemen. |
:lang(bahasa) | p:lang(itu) | Pilih setiap nilai atribut lang yang dimulai dengan "it"<p> elemen. |
:anak terakhir | p:anak terakhir | Memilih setiap elemen yang merupakan elemen anak terakhir dari induknya<p> elemen. |
:terakhir dari jenisnya | p:terakhir dari tipe | Pilih yang terakhir sebagai induknya<p>elemen masing-masing<p> elemen. |
:tautan | sebuah link | Pilih semua tautan yang belum dikunjungi. |
:bukan(pemilih) | :bukan§ | Pilih setiap non<p> elemen elemen. |
:anak ke-n(N) | p:nth-anak(2) | Memilih setiap elemen anak kedua yang merupakan induknya<p> elemen. |
:anak-terakhir-n(N) | p:nth-anak-terakhir(2) | Memilih setiap elemen anak kedua yang merupakan induk<p> Elemen, dihitung dari elemen anak terakhir. |
:n-terakhir-dari-jenis(N) | p:n-terakhir-dari-tipe(2) | Pilih yang kedua sebagai induk<p>elemen masing-masing<p>elemen, dihitung dari elemen anak terakhir |
:tipe ke-n(N) | p:nth-dari-tipe(2) | Pilih yang kedua sebagai induknya<p>elemen masing-masing<p> elemen. |
:hanya-jenis | p:hanya-bertipe | Pilih satu-satunya yang merupakan induknya<p>elemen masing-masing<p> elemen. |
:hanya anak | p:anak tunggal | Memilih satu-satunya elemen anak yang merupakan induknya<p> elemen. |
:opsional | masukan:opsional | Pilih tanpa atribut "wajib".<input> elemen. |
:diluar jangkauan | masukan:diluar jangkauan | Pilih nilai di luar rentang yang ditentukan<input> elemen. |
:hanya-baca | masukan:hanya-baca | Pilih yang memiliki atribut "readonly" yang ditentukan<input> elemen. |
:Baca tulis | masukan:baca-tulis | Pilih tanpa atribut "readonly".<input> elemen. |
:diperlukan | masukan:diperlukan | Pilih salah satu dengan atribut "wajib" yang ditentukan<input> elemen. |
:akar | akar | Pilih elemen akar dari elemen tersebut. |
:target | #berita:target | Pilih elemen #news yang sedang aktif (klik URL yang berisi nama jangkar). |
:sah | masukan: sah | Pilih semua dengan nilai yang valid<input> elemen. |
:dikunjungi | a:dikunjungi | Pilih semua tautan yang dikunjungi. |
Pemilih kelas semu | arti |
---|---|
li:nth-anak(2) | li kedua |
li:nth-anak(n) | Semua hal |
li:nth-anak(2n) | Semua li bernomor genap |
li:nth-anak(2n+1) | Semua li bernomor ganjil |
li:nth-anak(-n+5) | 5 li pertama |
li:nth-anak-terakhir(-n+5) | 5 li terakhir |
li:nth-anak(7n) | Pilih kelipatan 7 |
n berarti 0,1,2,3,4,5,6,7,8...(Tidak valid jika n kurang dari 1, karena n = 0 tidak akan dipilih)
tr:nth-child(odd):
Cocok dengan baris 1, 3, dan 5 tabel, yang setara dengantr:nth-child(2n+1)
。tr:nth-child(even)
: Cocok dengan baris 2, 4, dan 6 pada tabel, yang setara dengantr:nth-child(2n)
。Gunakan:nth-child() untuk menerapkan garis zebra, perataan tepi, penyorotan daftar rentang tertentu, dan tata letak adaptif daftar dinamis
https://blog.csdn.net/weixin_41192489/artikel/detail/122089484
CSS mengimplementasikan tampilan dan penyembunyian dinamis (penggunaan yang luar biasa dari :checked dan :target)
https://blog.csdn.net/weixin_41192489/artikel/detail/126267866
Gunakan: targetkan untuk memperluas lebih banyak, menciutkan, dan beralih tabhttps://blog.csdn.net/weixin_41192489/artikel/detail/121969768
Gunakan:placeholder-ditampilkan untuk mencapai interaksi gaya MaterialDesign
https://blog.csdn.net/weixin_41192489/artikel/detail/121976627
Gunakan:placeholder-shown untuk memverifikasi nilai null dan perintah tidak boleh kosong.
https://blog.csdn.net/weixin_41192489/artikel/detail/121977510
:checked mengimplementasikan ekspansi dan keruntuhan
https://demo.cssworld.cn/selector/9/2-1.php
:dicentang mengimplementasikan peralihan tab
https://demo.cssworld.cn/selector/9/2-2.php
:checked mengimplementasikan tombol radio khusus, kotak centang, sakelar, pemeriksaan label, dan pemilihan radio material
https://blog.csdn.net/weixin_41192489/artikel/detail/122050069
Gunakan :valid dan :invalid untuk mengimplementasikan validasi formulir asli
https://blog.csdn.net/weixin_41192489/artikel/detail/122070084
Gunakan :wajib dan :opsional untuk mengimplementasikan teks perintah verifikasi formulir
https://blog.csdn.net/weixin_41192489/artikel/detail/122072879
:fokus-dalam mengimplementasikan daftar drop-down
https://blog.csdn.net/weixin_41192489/artikel/detail/121959850
Saat kotak masukan terfokus, sorot label di depan (lihat metode 5 di tautan)
https://blog.csdn.net/weixin_41192489/artikel/detail/121784196
Arahkan mouse untuk menampilkan gambar yang diperbesar vs klik mouse untuk menampilkan gambar yang diperbesar
https://blog.csdn.net/weixin_41192489/artikel/detail/121944791
:empty menyembunyikan elemen kosong dan tips cerdas bidang yang hilang
https://blog.csdn.net/weixin_41192489/artikel/detail/122086159
:only-child mengimplementasikan animasi pemuatan dinamis multi-status
https://blog.csdn.net/weixin_41192489/artikel/detail/122088416
:layar penuh memungkinkan tampilan layar penuh dari gambar yang diklik
https://blog.csdn.net/weixin_41192489/artikel/detail/122328725
Pemilih elemen semu
::
Digunakan untuk memilih dan memberi gaya pada bagian suatu elemen, bukan keseluruhan elemen
CSS2中伪元素采用单冒号前缀语法, CSS2.1中伪元素改用双冒号前缀,所有支持双冒号的浏览器同样也支持旧的单冒号语法。考虑浏览器兼容性的话,推荐使用旧的单冒号语法,否则建议使用新的双冒号前缀
::before
Dan::after
Ini perlu digunakan bersama dengan atribut konten untuk mengatur konten sebelum dan sesudah elemen
https://blog.csdn.net/weixin_41192489/artikel/detail/115100040
Contoh praktis yang umum digunakan:
::first-letter
Inisial<p>很久很久以前</p>
<p>Long long ago</p>
p::first-letter {
font-size: 2em;
color: red;
}
::first-line
baris pertama <div style="width: 120px">
<p>很久很久以前,有一个白发苍苍的老人</p>
</div>
p::first-line {
color: red;
}
::selection
Tarik mouse untuk memilih area<p>很久很久以前,有一个白发苍苍的老人</p>
p::selection {
color: red;
background-color: yellow;
}
::placeholder
pengganti teks<input placeholder="请输入" />
/* input 不写,则会选中页面所有元素的占位符 */
input::placeholder {
color: red;
}
Pemilih hubungan
Pilih elemen berdasarkan hubungan antar elemen
>
Tag tingkat pertama yang dibungkus dalam sebuah tag adalah turunannya
<div>
<p>我是div的儿子</p>
</div>
div>p{
color:red;
}
空格
Semua tag dalam sebuah tag adalah turunannya
<div class="parent">
<p class="red">我是子代(属于后代)</p>
<p>我是子代(属于后代,但没有 .red)</p>
<div>
<div class="red">我是孙代(也属于后代)</div>
</div>
</div>
/* 所有属于.parent元素内部的.red元素都将被染成红色。*/
.parent .red {
color: red;
}
~
Di bawah elemen induk yang sama, pilih elemen yang ditentukansetelahSemua elemen pada level yang sama, jadi sebenarnya, harus disebut demikian 后面兄弟选择器
<div>
<button>按钮1(不会变红)</button>
<p>段落</p>
<button>按钮2(会变红)</button>
</div>
p ~ button {
color: red;
}
CSS tidak 前面兄弟选择器
, Anda dapat merujuk ke tautan di bawah untuk mensimulasikan penerapannya
https://blog.csdn.net/weixin_41192489/artikel/detail/121784196
+
Memilih elemen berikutnya segera setelah elemen
<div class="parent">
<p>段落</p>
<button>按钮1</button>
<button>按钮2</button>
</div>
p + button {
color: red;
}
Pilih elemen pada halaman yang cocok dengan beberapa penyeleksi secara bersamaan
<p class="red">很久很久以前1</p>
<p>很久很久以前2</p>
/* 选中 p 标签中class值含 red 的元素 */
p.red {
color: red;
}
,
Di antara beberapa penyeleksi, selama salah satu dari mereka puas, maka akan dipilih.
,
memisahkan <p class="error">报错信息</p>
<p class="important">重要信息</p>
<p>其他信息</p>
.error,
.important {
color: red;
}