Internet Explorer 8 รองรับ HTML 5 หรือไม่


138

มี HTML5 รองรับใน IE8 หรือไม่? อยู่ในแผนงานของ IE8 หรือไม่?


HTML 5 ยังคงเป็นฉบับร่าง นั่นหมายความว่าทุกสิ่งสามารถเกิดขึ้นได้ การพัฒนาอาจหยุดชะงักได้เหมือนที่เกิดขึ้นกับ XHTML 2
Gumbo

37
หวังว่าจะไม่มี IE ใด ๆ หลังจาก IE8 และจะไม่โกรธด้วยคำถามดังกล่าว
พระตะวันออก

ยิ่งกว่านั้น HTML5 คือ IE8 ที่เป็นและจะเป็นแบบร่างเสมอ!
MEM

คำตอบ:


80

IE8 Beta 2 สนับสนุนสอง APIs จาก HTML5: ส่งข้อความข้ามเอกสารและจัดเก็บข้อมูลที่ไม่ใช่ SQL

IE8 beta 2 ไม่ได้ใช้อัลกอริทึมการแยกวิเคราะห์ HTML5 หรือองค์ประกอบใหม่ (ไม่<canvas>หรือ<video>สนับสนุน)

นอกจากนี้ยังมีการแก้ไขข้อบกพร่องที่จัด IE8 ดีขึ้นด้วย HTML5


43
ดังนั้นคำตอบก็คือสำหรับทุกอย่างและวัตถุประสงค์ IE8 ไม่รองรับ html5 - เพียงแค่บิต randome และชิ้นส่วนของมัน ซึ่งทำให้การใช้ HTML5 (เช่นเดียวกับในมาร์กอัป HTML, ไม่ใช่สคริปต์ของ API) moot
โรลันด์เดอะเทปป์

หากคุณต้องการการสนับสนุน HTML 5 ใน IE 8 ให้ดาวน์โหลดปลั๊กอิน IE ที่เรียกว่า "Chrome Frame" มันแสดงผล HTML 5 เหมือนที่ Google Chrome ทำ! ข้อมูลเพิ่มเติมอยู่ที่นี่: appleinsider.com/articles/09/09/24/…
Shadowpat


72

คุณสามารถทำให้แท็ก HTML5 ทำงานได้ใน IE8 โดยใส่จาวาสคริปต์นี้ไว้ในหัว

<script type="text/javascript">
 document.createElement('header');
 document.createElement('nav');
 document.createElement('menu');
 document.createElement('section');
 document.createElement('article');
 document.createElement('aside');
 document.createElement('footer');
</script>

1
มีบทความอ้างอิงที่คุณพบสิ่งนี้หรือไม่? ขอบคุณ +1
BuddyJoe

ขออภัยรวมไว้เพื่อการตรวจสอบแบบฟอร์มของฉัน แต่ใช้งานไม่ได้ มีลิงค์ใดบ้างที่เราสามารถหาข้อมูลเพิ่มเติมเกี่ยวกับวิธีทำให้มันใช้งานได้?
เฮเลนนีลี

ขอบคุณที่ใช้งานได้กับองค์ประกอบส่วนของฉันฉันลบส่วนที่เหลือทั้งหมด คุณรู้จักสิ่งนี้จากที่ไหน
หมอก

1
คุณอาจใช้จาวาสคริปต์เพื่อใช้ HTML5 จำนวนมากโดยเพียงแค่สร้างองค์ประกอบ JS ที่กำหนดเอง (สำหรับองค์ประกอบของฟอร์มใหม่คุณจะต้องเชื่อมโยงกับฟังก์ชันการทำงานบางอย่าง) แต่การเพิ่มฐานข้อมูล SQL จะไม่เกิดขึ้นพร้อมกับอื่น ๆ คุณสมบัติของ HTML5 โดยส่วนตัวฉันจะบอกว่าอยู่ห่างจาก HTML5 สำหรับแอปพลิเคชัน IE8
josiah

1
@BuddyJoe โปรดดูหัวข้อ "การใช้องค์ประกอบ HTML5 ในเบราว์เซอร์ที่ไม่ใช่ HTML5" บนเว็บไซต์ MDN ที่นี่: developer.mozilla.org/en-US/docs/Web/Guide/HTML/…
Florent Paillot

43

คุณสามารถใช้สคริปต์นี้ IE HTML5 ชิมที่จะได้รับในระดับพื้นฐานของการสนับสนุนสำหรับองค์ประกอบความหมายใหม่ใน HTML5 <article>เช่น


2
ควรชี้ให้เห็นว่าสิ่งนี้ไม่ช่วยในการใช้ JavaScript ที่แน่นอน ตัวอย่างเช่นสิ่งต่อไปนี้จะไม่ทำงาน: var div = document.createElement ('div'); div.innerHTML = '<section> ทดสอบ </section>'; เราลงท้ายด้วย div.childNodes.length = 2 ฉันพบปัญหาในการใช้ jQuery และพยายามหาว่าเกิดอะไรขึ้นใน IE
Nick Spacek

2
Nitpick: สคริปต์นี้เรียกว่า "shiv" (เหมือนกับในมีดทำมือ) ไม่ใช่ "shim"
Mikko Rantalainen

6
ผู้เขียนใช้ทั้ง "shim" และ "shiv" โครงการนี้เรียกว่า "html5shim" การอ้างอิงจากcode.google.com/p/html5shim : คำถามทั่วไป: ความแตกต่างระหว่าง html5shim และ html5shiv คืออะไร คำตอบ: ไม่มีอะไรเรามี m และอีกหนึ่งมี av - นั่นแหละ
จอห์น

26

Modernizrยังเป็นตัวเลือกที่ยอดเยี่ยมสำหรับการให้ความสามารถในการเรนเดอร์ IE HTML5


6
จากหน้าแรกของ Modernizer - Modernizr จะไม่เพิ่มฟังก์ชันการทำงานที่ขาดหายไปให้กับเบราว์เซอร์ แต่จะตรวจจับความพร้อมใช้งานของคุณสมบัติดั้งเดิมและเสนอวิธีในการรักษาระดับการควบคุมเว็บไซต์ของคุณให้ดียิ่งขึ้นโดยไม่คำนึงถึงความสามารถของเบราว์เซอร์
Ira Miller

10
ไม่อยากเชื่อเลยว่าจะได้รับคะแนนเสียงลงมากมาย +1 เพื่อย้อนกลับหนึ่งในนั้น Modernizr อาจไม่เพิ่มฟังก์ชันการทำงานใด ๆ ให้กับเบราว์เซอร์ แต่ (พร้อมมีจำนวนมากของสิ่งที่มีประโยชน์อื่น ๆ ) มันไม่รวมถึงฟังก์ชั่น HTML5 Shim ซึ่งได้รับการกล่าวถึงในคำตอบอื่น ๆ ที่นี่และได้รับคะแนนดี
Spudley

Modernizer รวมกับ polyfill ( modernizr.com/docs/#polyfills ) ดูเหมือนว่าจะเพิ่มการรองรับความเข้ากันได้สำหรับคุณสมบัติ HTML5 แม้ว่าจะต้องเปิดใช้งาน JavaScript
Mikko Rantalainen

1
ไม่อยากเชื่อเลยว่านี่จะได้รับการโหวตมากมาย Modernizr มีไลบรารีเพิ่มเติมที่เรียกว่า shiv ซึ่งทำให้เข้าใจว่าแท็ก HTML5 บวกกับ modernizr มีการตรวจจับคุณสมบัติ แต่ไม่มีส่วนเกี่ยวข้องกับ html5 ดังนั้นถ้าคุณต้องการที่จะเข้าใจ html5 มันมีเหตุผลมากกว่าที่จะใช้ shiv เนื่องจาก Modernizr จะเกินความจำเป็น โดยทั่วไป Modernizr ไม่ใช่ตัวเลือกที่ดีอย่างที่คุณแนะนำ
sotn

+1 สำหรับคำตอบและขอบคุณ! ความคิดเห็นด้านบน - มันให้การสนับสนุนแก่ IEs เก่าในการแสดงเอกสารอย่างถูกต้องมันอาจไม่ให้ฟังก์ชั่นเครื่องเล่น html5 หรือการเรนเดอร์ 3d และ ext. แต่สำหรับเว็บไซต์ปกติที่พึ่งพามรดกที่เหมาะสมของสไตล์ CSS และที่ใช้ แท็ก html5 ใหม่มันทำงานได้สมบูรณ์แบบ นอกจากนี้ยังแก้ไขปัญหาบางอย่างเกี่ยวกับการเรนเดอร์และขยายการรองรับ css: เพิ่มการสนับสนุน rgba () และสิ่งอื่น ๆ โดยการเพิ่มฟิลเตอร์ซึ่งทำให้ชีวิตนักพัฒนาง่ายขึ้น - สิ่งเล็ก ๆ น้อย ๆ เหล่านี้ที่ทุกวันนี้ต้องเขียน ...
Vasil Popov

17

มันรองรับ

<!DOCTYPE html>

ใช่แล้ว.

บางทีคำถามที่ดีกว่าคือคุณสมบัติเว็บสมัยใหม่ที่รองรับ IE8 บางส่วนของสถานที่ที่ดีที่สุดที่จะตอบที่มีcaniuse.com , html5test.comและbrowserscope.org

HTML5 หมายถึงสิ่งต่าง ๆ มากมายสำหรับคนต่าง ๆ วันนี้มันหมายถึงฟังก์ชั่น HTML, CSS และ JavaScript คำนี้กลายเป็นเหมือน "Web 2.0" เล็กน้อย




5

HTML5 ยังอยู่ในร่างแบบร่าง (และจะใช้เวลานานมาก) ทำไมต้องรำคาญ


10
+1 คำถามมีอายุเกือบ 15 เดือนและคุณเป็นคนแรกที่กล่าวว่า HTML 5 ยังเป็นฉบับร่าง
Gumbo

5
จุดดี. ทำไมต้องรำคาญ มันไม่เหมือนกับการช่วยเว็บช่วย Microsoft ดังนั้น Silverlight และเบราว์เซอร์ที่ยอดเยี่ยม
BuddyJoe

10
@Gumbo - ข้อกำหนดภาษา C (ครั้งแรก) ยังไม่สมบูรณ์จนกว่าจะถึงปี 1989 คุณจะรอจนกว่าจะใช้งานหรือไม่ มันได้เข้ายึดครองอุตสาหกรรมในเวลานั้น ทำไมต้องรำคาญ ฉันเดาว่าขึ้นอยู่กับว่าคุณต้องการได้รับประโยชน์สูงสุดจากสิ่งที่แพลตฟอร์มปัจจุบันสามารถนำเสนอได้ มิฉะนั้นทำไมไม่ใช้ HTML 3.2 หรือ 2.0 อย่างถาวร?
Justin

2
@ จัสตินไม่มันก็เป็นเรื่องธรรมดาที่มาตรฐานเป็นเพียงบันทึกของสิ่งที่เป็นมาตรฐานในทางปฏิบัติแล้ว
Gumbo

4

ดูคู่มือcaniuseสำหรับคุณลักษณะ HTML 5 ทั้งหมดในเบราว์เซอร์และเวอร์ชันทั้งหมดรวมถึงเวอร์ชันในอนาคต


4

คุณสามารถใช้สิ่งนี้เพื่อทำให้ IE8 เข้าใจ / รองรับแท็ก HTML5 พื้นฐาน

<!--[if lt IE 9 ]> 
    <script type="text/javascript">
        var html5Elem = ['header', 'nav', 'menu', 'section', 'article', 'aside', 'footer'];
        for (var i = 0; i < html5Elem.length; i++){
            document.createElement(html5Elem[i]);
        }
    </script>
<![endif]-->

2

ตามhttp://msdn.microsoft.com/en-us/library/cc288472(VS.85).aspx#html IE8 จะมีการสนับสนุน HTML 5 ที่ "แข็งแกร่ง" ฉันไม่ได้เห็นอะไรเลยที่พูดถึง "การสนับสนุนที่แข็งแกร่ง" แต่ฉันสามารถพูดได้ว่าใช่สิ่ง HTML5 บางอย่างกำลังจะทำให้เป็น IE8


6
IE8 นั้นออกมาแล้วและเราไม่เห็น "การสนับสนุน HTML5 ที่แข็งแกร่ง" และ Microsoft ไม่รู้จักการอัพเกรดเหมือนเบราว์เซอร์อื่น ๆ ที่ทันสมัยกว่าดังนั้นการ "strong support" จะต้องรอ IE9 แต่ Microsoft ไม่ได้พูดอะไรมาก เกี่ยวกับ HTML5 สำหรับ IE9 เช่นกัน
Rob


2

คำตอบอื่น ๆ ที่นี่เป็นเรื่องเกี่ยวกับการเพิ่มความสามารถ HTML5 ให้กับ IE8 และเบราว์เซอร์อื่น ๆ เหล่านี้เรียกว่าPolyfillsและสถานที่ที่ชื่นชอบสำหรับการหาผู้ที่เป็นที่นี่

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