Modernizr และ Html5Shiv แตกต่างกันอย่างไร?


12

ฉันเล่นกับแนวคิดของการสลับไปใช้ html5 ดูเหมือนว่ามี 2 สคริปต์หลักสำหรับจัดการกับการสนับสนุน html5 บนเบราว์เซอร์รุ่นเก่า

Modernizr และ Html5Shiv

ฉันสงสัยว่าพวกเขาทำสิ่งเดียวกันหรือไม่ เลือกแบบไหนและทำไม

ความคิดใด ๆ

คำตอบ:


8

Modernizr ใช้เพื่อตรวจสอบความพร้อมของฟีเจอร์ HTML5 ในเอนจิ้นการแสดงผลที่แตกต่างกัน มันมีสคริปต์เช่น Html5Shiv ซึ่ง (เท่านั้น) เปิดใช้งานแท็ก HTML5 บน Microsoft Internet Explorer (ก่อนหน้าเวอร์ชัน 9 ซึ่งรู้จัก HTML5) ดูเพิ่มเติม"วิธีการที่จะได้รับ HTML5 ทำงานใน IE และ Firefox 2"

หากคุณเพียงต้องการเปิดใช้งาน HTML5 สำหรับ IE <9 ดังนั้น Html5Shiv จะเพียงพอ ฉันใช้รุ่น Html5Shiv โดย Remy Sharpภายในความคิดเห็นตามเงื่อนไขของ MS:

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

หากคุณยังต้องการที่จะตรวจสอบ (ผ่าน CSS หรือ JS) หากเบราว์เซอร์ของลูกค้าคือความสามารถในการเช่นHTML5 ฟอร์มองค์ประกอบ (เช่นโอเปร่าวันที่ป้อนข้อมูล) คอลัมน์ CSS3 หรือการไล่ระดับสีแล้วใช้Modernizr


2

คุณอาจต้องการลองhtml5boilerplate.comซึ่งเป็นแหล่งข้อมูลที่ดีสำหรับการเริ่มต้นกับไซต์ html5 พวกเขามีตัวเลือกที่สลับได้เช่น html5 shiv หรือ modernizr พร้อมกับการปรับปรุงพื้นฐานอื่น ๆ อีกมากมาย


ใช่ html5boilerplate นั้นดี มันมีทางเลือกสำหรับ modernizr หรือ html5shiv แต่สิ่งที่จะรวม?
Sinan

ยุติธรรมพอฉันเดาว่า html5 เป็นคำถามอะไร
Kzqai

1

ฉันรู้ว่าสิ่งนี้มาจากเมื่อก่อน แต่ฉันรู้สึกว่าฉันควรจะเพิ่มว่า modernizr ไม่ปรากฏในองค์ประกอบ polyfill HTML5 ที่โหลดผ่าน AJAX - มันใช้ได้เฉพาะกับเนื้อหาที่มีอยู่ในการโหลดหน้าแรก Html5Shiv ทำงานกับเนื้อหาที่โหลดผ่าน AJAX แต่ยังเป็นเพียงชุดย่อยของชุดคุณสมบัติของ modernizr เรากำลังใช้ทั้งบนเว็บแอพที่ฉันกำลังทำงานอยู่

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.