ความแตกต่างที่สำคัญระหว่าง HTML 4 และ HTML 5 คืออะไร


145

อะไรคือความแตกต่างที่สำคัญระหว่างHTML4และHTML5 ร่าง ?

โปรดให้คำตอบที่เกี่ยวข้องกับไวยากรณ์ที่เปลี่ยนแปลงและเพิ่ม / ลบองค์ประกอบ HTML

คำตอบ:


197

HTML5 มีหลายเป้าหมายที่แตกต่างจาก HTML4

ความสอดคล้องในการจัดการเอกสารที่ผิดรูปแบบ

หนึ่งหลักคือสอดคล้องจัดการข้อผิดพลาดที่กำหนดไว้ อย่างที่คุณทราบ HTML สนับสนุนจุดประสงค์ 'แท็กซุป' หรือความสามารถในการเขียนโค้ดที่มีรูปแบบไม่ถูกต้องและแก้ไขให้ถูกต้องในเอกสารที่ถูกต้อง ปัญหาคือว่ากฎการทำเช่นนี้ไม่ได้เขียนไว้ที่ใดก็ได้ เมื่อผู้ขายเบราว์เซอร์ใหม่ต้องการเข้าสู่ตลาดพวกเขาเพียงแค่ต้องทดสอบเอกสารที่มีรูปแบบไม่ถูกต้องในเบราว์เซอร์ต่าง ๆ (โดยเฉพาะ IE) และวิศวกรรมย้อนกลับจัดการข้อผิดพลาดของพวกเขา หากไม่เป็นเช่นนั้นหน้าเว็บจำนวนมากจะไม่แสดงผลอย่างถูกต้อง (โดยประมาณประมาณ 90% ของหน้าเว็บในเน็ตว่าอย่างน้อยมีรูปแบบที่ไม่ถูกต้อง)

ดังนั้น HTML5 จึงพยายามค้นหาและประมวลผลการจัดการข้อผิดพลาดนี้เพื่อให้นักพัฒนาเบราว์เซอร์สามารถสร้างมาตรฐานและลดเวลาและเงินที่จำเป็นในการแสดงสิ่งต่าง ๆ อย่างสม่ำเสมอ เช่นกันในอนาคตหลังจาก HTML เสียชีวิตในรูปแบบของเอกสารนักประวัติศาสตร์อาจยังต้องการอ่านเอกสารของเราและการมีขั้นตอนวิธีการแยกวิเคราะห์ที่กำหนดไว้อย่างสมบูรณ์จะช่วยได้อย่างมาก

คุณสมบัติเว็บแอปพลิเคชันที่ดีขึ้น

เป้าหมายรองของ HTML5 คือการพัฒนาความสามารถของเบราว์เซอร์ให้เป็นแพลตฟอร์มแอปพลิเคชันผ่าน HTML, CSS และ Javascript องค์ประกอบหลายคนได้รับเพิ่มโดยตรงกับภาษาที่มีอยู่ในปัจจุบัน (ใน HTML4) Flash หรือแฮ็ก JS-based เช่น<canvas>, และ<video> <audio>สิ่งที่มีประโยชน์เช่น Local Storage (ฐานข้อมูลคีย์ - ค่าคีย์ - ค่าในเบราว์เซอร์ที่สามารถเข้าถึงได้สำหรับ js สำหรับการจัดเก็บข้อมูลที่นอกเหนือจากคุกกี้ที่สามารถเก็บไว้ได้) ประเภทอินพุตใหม่เช่นวันที่เบราว์เซอร์สามารถเปิดเผยส่วนติดต่อผู้ใช้ง่าย ๆ ไม่ต้องใช้ตัวเลือกเลือกวันที่ตามปฏิทินของ js ของเรา) และการตรวจสอบความถูกต้องของฟอร์มบนเบราว์เซอร์จะทำให้การพัฒนาเว็บแอปพลิเคชั่นง่ายขึ้นสำหรับนักพัฒนาและทำให้เร็วขึ้นสำหรับผู้ใช้ แทนที่จะแฮ็คผ่านทาง javascript)

ปรับปรุงความหมายองค์ประกอบ

มีความพยายามอื่น ๆ อีกมากมายที่เกิดขึ้นใน HTML5 เช่นบทบาทความหมายที่กำหนดไว้ที่ดีขึ้นสำหรับองค์ประกอบที่มีอยู่ ( <strong>และ<em>ตอนนี้จริง ๆ แล้วหมายถึงสิ่งที่แตกต่างกันและแม้กระทั่ง<b>และ<i>มีความหมายคลุมเครือที่ควรทำงานได้ดี ความหมาย - <article>, <section>, <header>, <aside>และ<nav>ควรเปลี่ยนส่วนใหญ่ของ<div>s ใช้บนหน้าเว็บ, การทำหน้าของคุณบิตความหมายมากขึ้น แต่ที่สำคัญกว่าให้อ่านง่ายขึ้น ไม่มีการสแกนที่เจ็บปวดอีกต่อไปที่จะเห็นว่าการสุ่ม</div>ใดกำลังปิดแทนคุณจะมีความชัดเจน</header>หรือ</article>ทำให้โครงสร้างเอกสารของคุณง่ายขึ้น


14
โปรดให้ความสำคัญกับแท็กและประโยคโดยแก้ไขคำตอบ (มันเป็นเพียงข้อเสนอแนะเพราะในขณะที่ฉันอ่านข้อความนี้มันทำให้ฉันเหนื่อย)
Mohammad Faisal

44

จากWikipedia :

  • กฎการแยกวิเคราะห์แบบใหม่ที่มุ่งเน้นไปที่การแยกวิเคราะห์ที่ยืดหยุ่นและเข้ากันได้
  • องค์ประกอบใหม่ - ส่วน, วิดีโอ, ความคืบหน้า, nav, เครื่องวัด, เวลา, กัน, ผ้าใบ
  • แอตทริบิวต์การป้อนข้อมูลใหม่ - วันที่และเวลา, อีเมล์, URL
  • คุณลักษณะใหม่ - ping, charset, async
  • คุณสมบัติทั่วโลก (ที่สามารถนำไปใช้สำหรับทุกองค์ประกอบ) - id, tabindex, ทำซ้ำ
  • องค์ประกอบที่เลิกใช้ไม่ถูกต้อง - กึ่งกลาง, ตัวอักษร, การประท้วง

12

คุณจะต้องตรวจสอบความแตกต่างของ HTML5 จาก HTML4: W3C Working Group หมายเหตุ 9 ธันวาคม 2014เพื่อดูความแตกต่างอย่างสมบูรณ์ มีองค์ประกอบใหม่และคุณลักษณะองค์ประกอบมากมาย องค์ประกอบบางอย่างถูกลบออกและองค์ประกอบอื่น ๆ มีค่าความหมายแตกต่างกว่าเดิม

นอกจากนี้ยังมี API ที่กำหนดเช่นการใช้ Canvas เพื่อช่วยสร้างเว็บแอปรุ่นต่อไปและตรวจสอบให้แน่ใจว่าการใช้งานนั้นได้มาตรฐาน


11

HTML5 แนะนำ API จำนวนหนึ่งที่ช่วยในการสร้างเว็บแอปพลิเคชัน สามารถใช้ร่วมกับองค์ประกอบใหม่ที่แนะนำสำหรับแอปพลิเคชัน:

  • API สำหรับการเล่นวิดีโอและเสียงซึ่งสามารถใช้กับองค์ประกอบวิดีโอและเสียงใหม่
  • API ที่เปิดใช้งานเว็บแอปพลิเคชันออฟไลน์
  • API ที่อนุญาตให้เว็บแอปพลิเคชันลงทะเบียนตัวเองสำหรับโปรโตคอลหรือสื่อบางประเภท
  • API การแก้ไขร่วมกับcontenteditableแอตทริบิวต์สากลใหม่
  • API การลากและวางพร้อมกับdraggableแอตทริบิวต์
  • API ที่เปิดเผยประวัติและอนุญาตให้หน้าเพิ่มเข้าไปเพื่อป้องกันการแตกปุ่มย้อนกลับ

3

คุณอาจสนใจรายการองค์ประกอบ HTML5 และคุณลักษณะนี้

นอกจากนี้โปรดทราบว่ามันคือ "HTML 4" ไม่ใช่ "HTML4" แท้จริงแล้วสำหรับ HTML 5 นั้นมีการใช้ตัวแปรทั้งสอง แต่มีความหมายที่แตกต่างกัน HTML 5 หมายถึงชื่อของข้อมูลจำเพาะ W3C ในขณะที่ "HTML5" เป็นประเภทเอกสารของไฟล์ HTML เหล่านั้นที่มีtext/htmlประเภท MIME ที่เป็นไปตามข้อกำหนดนี้ เช่นเดียวกันกับ XHTML 5 กับ XHTML5


1
คุณดูเหมือนจะบอกว่า XHTML 5 มีอยู่ในขณะนี้ไม่ใช่กรณี คำแนะนำ W3C ล่าสุดของ XHTML คือ 1.1 และ 2.0 อยู่ในขั้นตอนร่าง
David Rivers

4
@David Rivers: มันมีอยู่จริง XHTML5 เป็นอนุกรม XML ของ HTML5
งัด Bynens

2
@David Rivers: อย่างไรก็ตาม XHTML 2 ไม่ได้อยู่ในขั้นตอนการร่างอีกต่อไป มันได้รับการยกเลิกในความโปรดปรานของ HTML5
Mathias Bynens

ขอบคุณ ฉันเพิ่งค้นพบสิ่งนี้ด้วยและไม่อยากจะเชื่อเลยว่าฉันอยู่นอกวงจรได้อย่างไร เป็นปีที่คร่าวๆ!
David Rivers


0

HTML 5 เชิญให้คุณเพิ่มมูลค่าความหมายจำนวนมากในรหัสของคุณ ยิ่งไปกว่านั้นยังมีวิธีการแก้ปัญหาแบบเดิม ๆ เพื่อฝังเนื้อหามัลติมีเดีย

ส่วนที่เหลือมีความสำคัญ แต่เป็นน้ำตาลเชิงเทคนิคมากกว่าที่จะช่วยให้คุณประหยัดจากการทำสิ่งเดียวกันกับภาษาการเขียนโปรแกรมของลูกค้า


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