Rumah > Artikel > hujung hadapan web > Bagaimana untuk menyemak sama ada penyemak imbas menyokong sifat CSS menggunakan JavaScript?
Dalam dunia hari ini, terdapat pelbagai penyemak imbas tersedia pada sistem. Oleh itu, kadangkala sesetengah sifat Cascading Style Sheets (C.S.S.) tidak berfungsi pada penyemak imbas ini. Jadi, untuk menyemak sifat CSS mana yang disokong oleh penyemak imbas tertentu, JavaScript mempunyai kaedah terbina dalam CSS.supports() yang menyemak sama ada penyemak imbas menyokong sifat tertentu itu. Kaedah supports() disokong dalam semua penyemak imbas: Opera, Edge, Chrome dan Firefox.
Kaedah CSS.supports() mengambil pasangan nilai kunci sebagai input, yang dalam format rentetan. Sintaks asas yang digunakan ialah -
CSS.supports(“propertyName:value”);
supports() - Ini ialah kaedah objek CSS yang menyemak sama ada penyemak imbas menyokong sifat yang diluluskan dalam parameter sokongan.
propertyName - Ini mengandungi nama sifat CSS seperti paparan, kedudukan, jidar, padding, indeks-z, penjajaran teks, dll.
nilai - Ia mengambil nilai sifat tertentu, seperti lentur, mutlak, relatif, 20 px, kiri, kanan, dsb.
Jadi, untuk mengetahui lebih lanjut tentang kaedah CSS.Supports(), kita akan melalui beberapa contoh.
Kaedah 1 - Dalam contoh ini, kami akan menghantar nilai kunci gaya CSS secara langsung sebagai parameter kepada kaedah CSS.supports(), yang kemudiannya akan menentukan sama ada sifat CSS yang diberikan disokong oleh penyemak imbas ini.
Langkah 1 - Gunakan kaedah supports() yang terdapat dalam objek CSS sebagai CSS.supports().
Langkah 2 - Lulus mana-mana sifat Cascading Style Sheets (CSS) sebagai parameter.
Langkah 3 - Cetak kaedah CSS.supports() dalam konsol menggunakan console.log().
Langkah 4 - Jika benar dikembalikan apabila menghantar atribut, maka atribut tertentu itu disokong, jika tidak, penyemak imbas tidak menyokongnya.
<!DOCTYPE html> <html lang="en"> <head> <title>Check CSS property exist in browser using js</title> </head> <body> <h1>Open console to see result by pressing (ctrl + shift + i) or F12 on keyboard</h1> <script> console.log(CSS.supports("float:top")); console.log(CSS.supports("float:right")); console.log(CSS.supports("float:bottom")); console.log(CSS.supports("float:left")); </script> </body> </html>
Keluaran kod di atas ditunjukkan dalam rajah di bawah. Oleh kerana sifat "float:top" dan "float:bottom" adalah tidak sah, ia akan mengembalikan palsu dalam konsol, manakala sifat "float:right" dan "float:left" akan kembali benar jika ia sah dan disokong oleh pelayar.
Kaedah 2 - Dalam kaedah ini kami akan membina antara muka pengguna di mana pengguna boleh memasukkan sifat CSS dalam medan yang diberikan dan boleh menyemak sama ada penyemak imbas atau penyemak imbas mereka menyokong sifat CSS ini. tidak.
Langkah 1 - Buat dua kotak carian, satu untuk kunci dan satu lagi untuk nilai memandangkan sifat CSS berada dalam bentuk nilai kunci. Tetapkan ID khusus mereka sebagai "propertyName" dan "pval" masing-masing. Buat medan keluaran lain dan butang HTML.
Langkah 2 - Buat fungsi yang dipanggil checkCss() dalam JavaScript. Fungsi anak panah akan digunakan.
Langkah 3 - Akses dua kotak input dan simpannya dalam pembolehubah, sambungkan nilai kotak ini ke dalam pembolehubah.
Langkah 4 - Lulus pembolehubah gabungan ini dalam CSS.supports() dan semak keadaan if-else.
Langkah 5 - Jika benar dikembalikan, sifat CSS disokong, jika tidak palsu dikembalikan dan harta itu tidak disokong.
<!DOCTYPE html> <html lang="en"> <head> <title>Check CSS property exist in browser using js</title> <style> body{ min-height: 90vh; display: flex; place-content: center; flex-direction: column; text-align: center; background-color: #0a0a0a; color: white; } input{ width:13rem; margin: 5px auto; padding: 0.3rem; outline: none; } button{ width: 5rem; margin: 0 auto; padding: 0.2rem; cursor: pointer; background-color: transparent; box-shadow: 0 0 5px white; border-radius: 5px; color: white; border: none; } </style> </head> <body> <h1>CSS Property Validator</h1> <div id="output" style="width:5rem;margin: 5px auto;padding: 0.2rem;"></div> <input type="text" id="propertyName" placeholder="Enter propertyName*"> <input type="text" id="pval" placeholder="Enter value*"> <button onclick="checkCss()">Check</button> <script> checkCss = () => { var p = document.getElementById("propertyName").value; var v = document.getElementById("pval").value; var pv = p + ":" + v; if(CSS.supports(pv)){ document.getElementById("output").innerText=CSS.supports(pv); document.getElementById("output").style.background="green"; document.getElementById("output").style.color="white"; } else { document.getElementById("output").innerText=CSS.supports(pv); document.getElementById("output").style.background="tomato"; document.getElementById("output").style.color="white"; } } </script> </body> </html>
Keluaran kod di atas adalah seperti yang ditunjukkan dalam rajah di bawah Pengguna boleh menaip sifat CSS dalam kotak input yang diberikan dan menyemak sama ada penyemak imbas anda menyokong sifat ini Seperti yang ditunjukkan dalam rajah di bawah, atribut "display:block" disokong oleh penyemak imbas dan sah , ia kembali benar.
Output adalah seperti yang ditunjukkan dalam rajah di bawah, dan false dikembalikan, jadi atribut yang diisi dalam kotak input adalah tidak sah dan tidak disokong oleh penyemak imbas.
supports() ialah Boolean kerana ia mengembalikan benar atau salah bergantung pada sama ada penyemak imbas semasa menyokong sifat CSS. Antara muka Contoh 2 amat berguna untuk pembangun kerana ia menghapuskan keperluan untuk menyemak konsol berulang kali hanya masukkan nama dan nilai sifat CSS anda ke dalam medan input dan anda akan dimaklumkan sama ada penyemak imbas semasa menyokongnya.
Atas ialah kandungan terperinci Bagaimana untuk menyemak sama ada penyemak imbas menyokong sifat CSS menggunakan JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!