Apa perbedaan antara Modernizr dan Html5Shiv?

12

Saya bermain-main dengan gagasan beralih ke HTML5. Tampaknya ada 2 skrip utama untuk berurusan dengan mendukung HTML5 pada browser lama.

Modernizr dan Html5Shiv

Saya bertanya-tanya apakah mereka melakukan hal yang sama. Yang mana yang harus dipilih dan mengapa?

Ada ide?

Sinan
sumber

Jawaban:

8

Modernizr digunakan untuk memeriksa ketersediaan fitur HTML5 di mesin rendering yang berbeda. Ini termasuk skrip seperti Html5Shiv, yang (hanya) memungkinkan tag HTML5 di Microsoft Internet Explorer (sebelum versi 9, yang tahu HTML5). Lihat juga "Cara membuat HTML5 berfungsi di IE dan Firefox 2" .

Jika Anda hanya ingin mengaktifkan HTML5 untuk IE <9, maka Html5Shiv sudah cukup. Saya menggunakan versi Html5Shiv oleh Remy Sharp dalam komentar bersyarat MS:

<!--[if lte IE 8]>
    <script src="templates/js/html5.js"></script>
<![endif]-->

Jika Anda juga ingin memeriksa (melalui CSS atau JS), jika browser klien mampu misalnya elemen bentuk-HTML5 (seperti input tanggal Operas), kolom atau gradien CSS3, kemudian gunakan Modernizr .

feeela
sumber
2

Anda mungkin juga ingin memeriksa html5boilerplate.com , sumber yang bagus untuk memulai dengan situs html5, mereka menyediakan pilihan yang dapat diubah seperti html5 shiv atau modernizr bersama dengan banyak perbaikan baseline lainnya.

Kzqai
sumber
ya html5boilerplate bagus. Ini memiliki pilihan untuk modernizr atau html5shiv. Tapi yang mana yang harus dimasukkan?
Sinan
cukup adil, saya kira html5 adalah apa yang mendorong pertanyaan?
Kzqai
1

Saya tahu ini dari beberapa waktu yang lalu, tapi saya merasa saya harus menambahkan bahwa modernizr tidak muncul ke elemen polyfill HTML5 yang dimuat melalui AJAX - ini hanya bekerja pada konten yang ada pada pemuatan halaman awal. Html5Shiv TIDAK berfungsi pada konten yang dimuat melalui AJAX, tetapi juga hanya sebagian kecil dari set fitur modernizr. Kami sebenarnya menggunakan keduanya di aplikasi web yang sedang saya kerjakan.

Isoron
sumber