Bagaimana untuk menyemak sama ada penyemak imbas menyokong sifat CSS menggunakan JavaScript?

WBOY
Lepaskan: 2023-08-27 23:09:12
ke hadapan
881 orang telah melayarinya

Ikhtisar

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.

Tatabahasa

Kaedah CSS.supports() mengambil pasangan nilai kunci sebagai input, yang dalam format rentetan. Sintaks asas yang digunakan ialah -

CSS.supports(“propertyName:value”);
Salin selepas log masuk
  • 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.

Algoritma

  • 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.

Contoh

<!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>
Salin selepas log masuk

Output

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.

如何使用 JavaScript 检查浏览器是否支持 CSS 属性?

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.

Algoritma

  • 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.

Contoh

<!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>
Salin selepas log masuk

Output

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.

如何使用 JavaScript 检查浏览器是否支持 CSS 属性?

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.

如何使用 JavaScript 检查浏览器是否支持 CSS 属性?

Kesimpulan

Jenis pulangan kaedah

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!

sumber:tutorialspoint.com
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
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!