Pemilih CSS ialah konsep yang sangat penting semasa membangunkan halaman web. Biasanya kami menggunakan pemilih CSS untuk mengawal gaya elemen halaman. Walau bagaimanapun, kadangkala kita mungkin perlu menggunakan PHP untuk mengendalikan pemilih CSS, seperti menghuraikan fail CSS atau mengekstrak peraturan CSS daripada dokumen HTML. Pada masa ini, ungkapan biasa sangat berguna.
Artikel ini akan memperkenalkan cara menggunakan ungkapan biasa PHP untuk melaksanakan operasi padanan pada pemilih CSS, membantu pembaca menguasai penggunaan ungkapan biasa dengan lebih baik.
1. Struktur pemilih CSS
Sebelum mula memadankan pemilih CSS, kita perlu memahami struktur pemilih CSS.
Pemilih CSS terdiri daripada dua bahagian: pemilih dan pengubah, dipisahkan oleh ruang, seperti yang ditunjukkan di bawah:
pengubah suai pemilih
Pemilih digunakan untuk meletakkan elemen, Pengubah suai digunakan untuk menukar gaya dan sifat unsur lain.
Pemilih yang biasa digunakan termasuk:
- Pemilih elemen: Padankan berdasarkan nama elemen, seperti div, p, dsb.
- Pemilih kelas: Berdasarkan kelas nilai atribut Padanan, seperti .class;
- Pemilih ID: padanan berdasarkan nilai atribut id, seperti #id.
Pengubah suai yang biasa digunakan termasuk:
- Pernyataan: digunakan untuk mengubah suai gaya dan atribut lain unsur, seperti warna: merah; -class/pseudo Elemen: digunakan untuk memadankan atribut atau keadaan elemen tertentu, seperti :hover, :active, :first-child, dsb.
- 2. Ekspresi biasa yang sepadan dengan pemilih CSS
Dengan pemahaman tentang struktur pemilih CSS, kami boleh menggunakan ungkapan biasa untuk memadankannya.
Pertama, kita perlu menentukan corak ungkapan biasa untuk dipadankan dengan pemilih CSS. Corak mudah adalah seperti berikut:
/(w+)(.w+)|(#w+))?/
Corak ini boleh sepadan dengan pemilih CSS berikut:
div
div.red
div#header
Ia terdiri daripada tiga bahagian:
w+: nama pemilih yang sepadan, iaitu, pemilih elemen;
((.w+)|(#w+))?: Pemilih kelas atau pemilih ID yang sepadan. -
- Antaranya, (.w+) digunakan untuk memadankan pemilih kelas, dan (#w+) digunakan untuk memadankan pemilih ID. Mereka dipisahkan oleh |, menunjukkan bahawa hanya satu daripadanya perlu dipadankan.
Dalam penggunaan sebenar, kami juga boleh memanjangkan corak seperti yang diperlukan untuk memadankan lebih banyak jenis pemilih CSS. Sebagai contoh, kita boleh menambah padanan untuk perhubungan keturunan pemilih seperti corak berikut:
/(w+)(s+w+)*((.w+)|(#w+))?/
Corak ini boleh sepadan dengan bentuk pemilih CSS berikut:
div p
div p.red
div#header p
di mana (s+w+)* digunakan Padanan perhubungan keturunan pemilih Setiap perhubungan keturunan terdiri daripada ruang dan nama pemilih, menunjukkan bahawa terdapat berbilang perhubungan keturunan.
3. Contoh kod PHP
Dengan corak padanan, kita boleh menggunakan preg_match() untuk dipadankan dalam PHP. Berikut ialah kod contoh mudah:
// Tentukan corak pemilih CSS $pattern = '/(w+)(s+w+)*((.w+) | (#w+))?/';
// Pemilih CSS untuk dipadankan
$selector = 'div p.red';
// Padanan
preg_match($ corak, $selector, $matches);
// Output padanan hasil
print_r($matches);
?>
Jalankan kod di atas dan keluarkan hasilnya It ialah:
Array
(
[0] => div p.red
[1] => div
[2] => p
[3] => .red
[4] =>
Salin selepas log masuk
)
Antaranya, $matches[0] mewakili keseluruhan keputusan padanan, $matches[1] mewakili nama pemilih , $ matches[2] mewakili perhubungan keturunan, dan $matches[3] mewakili pemilih kelas atau pemilih ID.
Sudah tentu, kami juga boleh memproses dan mengubah suai hasil padanan mengikut keperluan aplikasi sebenar untuk memenuhi keperluan kami sendiri.
4. Ringkasan
Artikel ini memperkenalkan cara menggunakan ungkapan biasa PHP untuk melaksanakan operasi padanan pada pemilih CSS, membantu pembaca menguasai penggunaan ungkapan biasa dengan lebih baik. Sudah tentu, struktur pemilih CSS sangat kaya, dan ungkapan biasa juga mempunyai banyak ruang untuk pengembangan dan pengoptimuman Pembaca boleh meneroka sendiri mengikut keperluan sebenar.
Atas ialah kandungan terperinci Ungkapan biasa PHP dalam tindakan: pemadanan pemilih CSS. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!