ความแตกต่างระหว่าง html4 และ html5 ดูตัวอย่าง HTML5

บทความนี้อธิบายสั้น ๆ เกี่ยวกับความแตกต่างระหว่าง html5 และ html 4
ไวยากรณ์การเข้ารหัสอักขระองค์ประกอบใหม่แอตทริบิวต์ใหม่ API ฉันจะพูดถึงคุณลักษณะที่ถูกยกเลิกและการเปลี่ยนแปลงที่สำคัญหลายประการ

HTML 5 ยังอยู่ในระหว่างการพัฒนา แต่มีหลายสิ่งที่น่าสนใจเกี่ยวกับเรื่องนี้อยู่แล้ว เมื่อมองแวบแรกนวัตกรรมดูเหมือนจะขัดแย้งกันว่าสิ่งต่างๆจะเป็นจริงได้อย่างไร - เวลาจะบอกได้

ไวยากรณ์

HTML 5 จะมีสองไวยากรณ์ - HTML และ XML "กำหนดเอง" ไวยากรณ์ HTML กำหนดกฎโดยละเอียดสำหรับการแยกวิเคราะห์ (รวมถึง "การจัดการข้อผิดพลาด") ตัวแทนผู้ใช้จะปฏิบัติตามกฎเหล่านี้สำหรับเอกสารที่มีข้อความ / html ประเภท MIME นี่คือตัวอย่างของไวยากรณ์ HTML: ไวยากรณ์ XML เข้ากันได้กับเอกสาร XHTML1 และการนำไปใช้งาน ในการใช้ไวยากรณ์นี้คุณต้องประกาศประเภท XML MIME และองค์ประกอบต้องได้รับการจัดโครงสร้างตามข้อกำหนด XML ด้านล่างนี้เป็นตัวอย่างที่เป็นไปตามไวยากรณ์ XML:

01

03 < head >

04 < title >ตัวอย่างเอกสาร

05

06 < body >

07 < p >ย่อหน้าตัวอย่าง

08

09

การเข้ารหัสอักขระ

สำหรับไวยากรณ์ HTML นักพัฒนาสามารถใช้สามวิธีในการตั้งค่าการเข้ารหัส: - ที่ระดับการขนส่ง เมื่อใช้ส่วนหัว HTTP ประเภทเนื้อหาเช่น - ใช้อักขระ Unicode Byte Order Mark (BOM) ที่จุดเริ่มต้นของไฟล์ อักขระนี้ให้ลายเซ็นของการเข้ารหัสที่ใช้ - ใช้เมตาแท็กที่มีแอตทริบิวต์ charset เพื่อกำหนดเป็นลูกคนแรกของส่วนหัว โปรดทราบว่าในการกำหนดการเข้ารหัสจะใช้

สำหรับไวยากรณ์ XML นักพัฒนาต้องปฏิบัติตามกฎของข้อกำหนด XML

ของใหม่

  • มาตรา แสดงถึงส่วนหนึ่งของเอกสารหรือส่วน
  • บทความ นำเสนอเนื้อหาอิสระสำหรับรวมไว้ในเอกสารบทความ
  • กัน แสดงถึงเนื้อหาที่เกี่ยวข้องเพียงบางส่วนกับส่วนที่เหลือของหน้า
  • หัวข้อ นำเสนอชื่อเรื่อง มาตรา
  • ส่วนท้าย - ส่วนท้ายอาจมีข้อมูลเกี่ยวกับผู้แต่งลิขสิทธิ์และอื่น ๆ
  • nav แสดงถึงส่วนของเอกสารที่มีไว้สำหรับการนำทาง
  • ไดอะล็อก สามารถใช้เพื่อเน้นกล่องโต้ตอบ:
  • 01 < dialog >
  • 02 < dt > คอสเตลโล

    03 < dd > ดูสิคุณต้องเบสคนแรก?

    04 < dt > แอ๊บบอต

    05 < dd > แน่นอน.

    06 < dt > คอสเตลโล

    07 < dd > ใครเล่นก่อน?

    08 < dt > แอ๊บบอต

    09 < dd > ถูกตัอง.

    10 < dt > คอสเตลโล

    11 < dd > เมื่อคุณจ่ายเงินให้กับเบสคนแรกทุกเดือนใครจะได้รับเงิน?

    12 < dt > แอ๊บบอต

    13 < dd > เงินทุกบาททุกสตางค์

    14

  • รูป สามารถใช้เพื่อเชื่อมโยงชื่อกับเนื้อหาสื่อ:
  • เสียง และ วิดีโอ สำหรับมัลติมีเดีย ทั้งสองมี API ที่เกี่ยวข้อง วิธีนี้นักพัฒนาสามารถเขียนสคริปต์อินเทอร์เฟซผู้ใช้ของตนเองได้ แต่ยังมีวิธีเรียกใช้ API ตัวแทนผู้ใช้มาตรฐาน สามารถใช้ร่วมกับองค์ประกอบเหล่านี้ได้ แหล่งที่มาถ้าเป็นไปได้ที่จะจัดระเบียบสตรีมคู่ขนาน
  • ฝัง ใช้สำหรับปลั๊กอินเนื้อหา
  • เมตร - เพื่อแสดงหน่วยวัด
  • เวลา - วันที่และ / หรือเวลา
  • ผ้าใบ ใช้ในการแสดงผลกราฟิกแบบไดนามิก
  • คำสั่ง แสดงถึงคำสั่งที่ผู้ใช้สามารถเรียกใช้
  • ดาต้ากริด - การนำเสนอแบบโต้ตอบของรายการประเภท "ต้นไม้" หรือข้อมูลแบบตาราง
  • รายละเอียด ให้ข้อมูลเพิ่มเติมที่ผู้ใช้สามารถขอรับได้ตามคำขอ
  • ดาต้าลิสต์ พร้อมกับแอตทริบิวต์ใหม่ รายการ ใช้ทำคอมโบบ็อกซ์:

    1 < input list = browsers >

    2 < datalist id = browsers >

    3 < option value = "Safari" >

    4 < option value = "Internet Explorer" >

    5 < option value = "Opera" >

    6 < option value = "Firefox" >

    7

  • แผ่นข้อมูล, กฎและ รัง จัดเตรียมกลไกการสร้างเทมเพลตสำหรับ HTML
  • แหล่งที่มาของเหตุการณ์ ใช้เพื่อสกัดกั้นเหตุการณ์ที่เซิร์ฟเวอร์ส่งมา
  • เอาท์พุท แสดงถึงประเภทของผลลัพธ์ที่เฉพาะเจาะจงตัวอย่างเช่นจากการคำนวณที่ทำผ่านสคริปต์
  • ความคืบหน้า แสดงถึงความคืบหน้าของงานเช่นการดาวน์โหลด
  • แอตทริบิวต์ ชนิด ธาตุ อินพุต ตอนนี้มีค่าใหม่ดังต่อไปนี้:
    • วันเวลา
    • วันที่และเวลาท้องถิ่น
    • วันที่
    • เดือน
    • สัปดาห์
    • เวลา
    • จำนวน
    • พิสัย
    • อีเมล์
    แนวคิดเบื้องหลังประเภทใหม่เหล่านี้คือตัวแทนผู้ใช้สามารถจัดเตรียมอินเทอร์เฟซสำหรับอ็อบเจ็กต์เช่นปฏิทิน (ตัวเลือกวันที่) การรวมสมุดที่อยู่และให้ข้อมูลในรูปแบบเฉพาะแก่เซิร์ฟเวอร์ สิ่งนี้ให้ประโยชน์บางประการแก่ทั้งผู้ใช้และนักพัฒนาเนื่องจากข้อมูลของผู้ใช้จะได้รับการตรวจสอบความถูกต้องก่อนที่จะส่งไปยังเซิร์ฟเวอร์โดยเบราว์เซอร์ ซึ่งหมายความว่านักพัฒนาไม่จำเป็นต้องใช้ทรัพยากรในการตรวจสอบความถูกต้องของข้อมูลที่ป้อนซึ่งจะนำไปสู่การลดเวลารอการตอบกลับ

แอตทริบิวต์ใหม่

HTML 5 แนะนำคุณลักษณะใหม่ ๆ สำหรับองค์ประกอบที่รวมอยู่ใน HTML 4 แล้ว:
  • องค์ประกอบ และ พื้นที่ ได้รับแฟล็ก ping ใหม่ซึ่งกำหนดรายการที่อยู่ URI ที่ควร ping เมื่อติดตามไฮเปอร์ลิงก์ หลักการของการดำเนินการยังไม่ชัดเจน
  • ธาตุ พื้นที่ ตอนนี้มีคุณลักษณะ hreflang และ rel
  • ฐาน ได้รับแอตทริบิวต์เป้าหมาย
  • แอตทริบิวต์ มูลค่า สำหรับ ลี้ และแอตทริบิวต์ เริ่มต้น สำหรับองค์ประกอบ ถึง ไม่เลิกใช้งานอีกต่อไป
  • เมตา มีแอตทริบิวต์ ชุดอักขระ
  • แอตทริบิวต์ใหม่ ออโต้โฟกัส สามารถพิจารณาได้จาก อินพุต (ยกเว้นเมื่อ ชนิด แอตทริบิวต์ - ซ่อนอยู่), เลือก, textarea และ ปุ่ม... ซึ่งเป็นวิธีในการส่งผ่านการควบคุมไปยังแบบฟอร์มในเวลาโหลดหน้า
  • แอตทริบิวต์ แบบฟอร์ม สำหรับ อินพุต, เอาท์พุท, เลือก, textarea, ปุ่ม และ fieldset ช่วยให้คุณสามารถเชื่อมโยงองค์ประกอบที่มีรูปร่างมากกว่าหนึ่งรูปร่าง
  • อินพุต, ปุ่ม และ แบบฟอร์ม มีแอตทริบิวต์ แทนที่ซึ่งจะกำหนดสิ่งที่เกิดขึ้นกับองค์ประกอบหลังจากส่งแบบฟอร์ม
  • แบบฟอร์ม, เลือก และ ดาต้าลิสต์ มีแอตทริบิวต์ ข้อมูลซึ่งคำนึงถึงการกรอกข้อมูลล่วงหน้าโดยอัตโนมัติในกรณีที่ต้องกรอกข้อมูลจากเซิร์ฟเวอร์
  • แอตทริบิวต์ใหม่ จำเป็น ใช้กับ อินพุต (ยกเว้นเมื่อ ชนิด แอตทริบิวต์ - ซ่อนอยู่, ภาพ หรือปุ่ม) และ textarea... เขาระบุฟิลด์ที่จำเป็น
  • อินพุต และ textarea มีแอตทริบิวต์ใหม่ inputmodeซึ่งให้คำแนะนำแก่อินเทอร์เฟซผู้ใช้เกี่ยวกับข้อมูลที่คาดหวังสำหรับการป้อนข้อมูล
  • ตอนนี้คุณสามารถ ปิดการใช้งาน (ปิดการใช้งาน) ทั้งหมด fieldsetที่เป็นไปไม่ได้มาก่อน
  • ธาตุ อินพุต มีคุณลักษณะใหม่ ๆ เพื่อกำหนดข้อ จำกัด : เติมข้อความอัตโนมัติ, นาที, สูงสุด, รูปแบบ และ ขั้นตอนและ รายการซึ่งสามารถใช้ร่วมกับองค์ประกอบต่างๆ เลือก และ ดาต้าลิสต์
  • อินพุต และ ปุ่ม ยังมีแอตทริบิวต์ใหม่ แม่แบบซึ่งสามารถใช้สำหรับรูปแบบการทำซ้ำ
  • ธาตุ เมนู มีคุณสมบัติใหม่สามประการ: ชนิด, ฉลาก และ ส่งอัตโนมัติ
  • สคริปต์ มีแอตทริบิวต์ใหม่ ไม่ตรงกันซึ่งมีผลต่อการโหลดและการทำงานของสคริปต์
  • ธาตุ html มีแอตทริบิวต์ใหม่ รายการซึ่งชี้ไปที่แคชของแอปพลิเคชันที่ใช้ร่วมกับ API สำหรับเว็บแอปพลิเคชันแบบสแตนด์อะโลน
คุณลักษณะหลายอย่างจาก HTML 4 ใช้กับองค์ประกอบทั้งหมดซึ่งเป็นสาเหตุที่เรียกว่าแอตทริบิวต์ส่วนกลาง: ชั้นเรียน, ผบ, id, lang, tabindex และ หัวข้อ.

นอกจากนี้ยังมีคุณสมบัติส่วนกลางใหม่หลายประการ:

  • แอตทริบิวต์ พอใจ แสดงว่ารายการนั้นสามารถแก้ไขได้
  • เมนูบริบท สามารถใช้เพื่อชี้ไปที่เมนูบริบทที่สร้างโดยผู้เขียน
  • ลากได้ สามารถใช้ร่วมกับ drag & drop API ใหม่ได้
  • ไม่เกี่ยวข้อง แสดงว่ารายการนั้นยังไม่มีหรือไม่เกี่ยวข้องอีกต่อไป
แอตทริบิวต์สำหรับรูปแบบการทำซ้ำ:
  • ทำซ้ำ
  • เริ่มต้นซ้ำ
  • ทำซ้ำ - นาที
  • ทำซ้ำสูงสุด

รายการที่ถูกยกเลิก

องค์ประกอบต่อไปนี้ไม่รวมอยู่ใน HTML 5 เนื่องจากเอฟเฟกต์ทำได้โดยใช้ CSS:
  • เบสฟอนต์
  • ศูนย์
  • โจมตี
องค์ประกอบต่อไปนี้ไม่รวมอยู่ใน HTML 5 เนื่องจากการใช้งานมีผลเสียต่อความสามารถในการใช้งานและการเข้าถึง:
  • กรอบ
  • เฟรมเซ็ต
  • โนเฟรม
ไม่รวมรายการต่อไปนี้เนื่องจากไม่ค่อยได้ใช้หรืออาจถูกแทนที่ด้วยรายการอื่น:
  • อักษรย่อ
  • แอพเพล็ต แทนที่ วัตถุ
  • isindex
  • ผบ แทนที่ ul
สุดท้าย noscript ยังคงอยู่ในไวยากรณ์ HTML เท่านั้นเนื่องจากการใช้งานเกี่ยวข้องกับการแยกวิเคราะห์ด้วยโปรแกรมแยกวิเคราะห์ HTML

แอตทริบิวต์ที่ถูกยกเลิก

  • คีย์การเข้าถึง สำหรับ , พื้นที่, ปุ่ม, อินพุต, ฉลาก, ตำนาน และ textarea
  • rev และ ชุดอักขระ สำหรับ ลิงค์ และ
  • รูปร่าง และ coords สำหรับ
  • longdesc สำหรับ img และ iframe
  • เป้าหมาย สำหรับ ลิงค์
  • nohref สำหรับ พื้นที่
  • ข้อมูลส่วนตัว สำหรับ ศีรษะ
  • รุ่น สำหรับ แผนที่, img, วัตถุ, แบบฟอร์ม, iframe,
  • โครงการ สำหรับ เมตา
  • เก็บถาวร, classid, codebase, ประเภทรหัส, ประกาศ และ รอ สำหรับ วัตถุ
  • ประเภทมูลค่า และ ชนิด สำหรับ พารามิเตอร์
  • ชุดอักขระ และ ภาษา สำหรับ สคริปต์
  • สรุป สำหรับ ตาราง
  • ส่วนหัว, แกน และ abbr สำหรับ td และ
  • ขอบเขต สำหรับ td
นอกจากนี้ HTML 5 ยังไม่มีแอตทริบิวต์ต่อไปนี้เนื่องจาก CSS จัดการได้ดีกว่า:
  • จัดตำแหน่ง สำหรับ คำบรรยายภาพ, iframe, img, อินพุต, วัตถุ, ตำนาน, ตาราง, ชม, div, h1-h6, , col, กลุ่มเพื่อน, tbody, td, tfoot, , เทพ, tr และ ร่างกาย
  • alink, ลิงค์, ข้อความ และ vlink สำหรับ ร่างกาย
  • พื้นหลัง สำหรับ ร่างกาย
  • bgcolor สำหรับ ตาราง, tr, td, และ ร่างกาย
  • ชายแดน สำหรับ ตาราง, img และ วัตถุ
  • เซลล์แพดดิง และ เซลล์ สำหรับ ตาราง
  • ถ่าน และ charoff สำหรับ col, กลุ่มเพื่อน, tbody, td, tfoot, , เทพ และ tr
  • ชัดเจน สำหรับ br
  • กะทัดรัด สำหรับ เมนู, ถึง และ ul
  • กรอบ บน ตาราง
  • กรอบ ให้เครดิตกับ iframe
  • ความสูง สำหรับ iframe, td และ
  • hspace และ vspace สำหรับ img และ วัตถุ
  • ความสูง, marginwidth และ การเลื่อน สำหรับ iframe
  • จมูก สำหรับ ชม
  • nowrap สำหรับ td และ
  • กฎ สำหรับ ตาราง
  • ขนาด สำหรับ ชม, อินพุต และ เลือก
  • สไตล์ สำหรับทุกองค์ประกอบ
  • ชนิด สำหรับ ลี้, ถึง และ ul
  • ความกล้าหาญ สำหรับ col, กลุ่มเพื่อน, tbody, td, tfoot, , เทพ และ tr
  • ความกว้าง สำหรับ ชม, ตาราง, td, , col, กลุ่มเพื่อน, iframe และ ก่อน

API

HTML 5 แนะนำ API มากมายที่จะช่วยคุณสร้างเว็บแอปพลิเคชัน สามารถใช้ร่วมกับรายการใหม่ได้
  • 2D drawing API ที่สามารถใช้กับองค์ประกอบใหม่ ผ้าใบ
  • API สำหรับการเล่นวิดีโอและเสียงที่สามารถใช้กับองค์ประกอบใหม่ ๆ วิดีโอ และ เสียง
  • พื้นที่หน่วยความจำเฉพาะ (ที่เก็บถาวร) พร้อมรองรับข้อมูลคีย์ / ค่าและข้อมูล SQL
  • API ที่อนุญาตให้ใช้งานเว็บออฟไลน์
  • API ที่อนุญาตให้เว็บแอปพลิเคชันลงทะเบียนตัวเองสำหรับโปรโตคอลเฉพาะหรือประเภท MIME
  • API การแก้ไขรวมกับแอ็ตทริบิวต์ global contenteditable ใหม่ได้
  • ลากและวาง API รวมกับแอตทริบิวต์ ลากได้
  • API เครือข่าย
  • API ที่สร้างประวัติการเข้าชมเพื่อป้องกันไม่ให้ปุ่มย้อนกลับพัง (API นี้มีข้อ จำกัด ด้านความปลอดภัยที่จำเป็น)
  • การส่งข้อความข้ามเอกสาร
  • เหตุการณ์ที่เซิร์ฟเวอร์ส่งรวมกับองค์ประกอบใหม่ แหล่งที่มาของเหตุการณ์

ส่วนขยาย HTMLDocument

HTML 5 ได้ขยายอินเทอร์เฟซ HTMLDocument ขณะนี้อินเทอร์เฟซถูกนำไปใช้กับอ็อบเจ็กต์ทั้งหมดของอินเทอร์เฟซเอกสาร วิธีการใหม่ของเขา:
  • getElementsByClassName ()
  • activeElement และ hasFocus
  • getSelection ()
  • designMode และ execCommand ()ซึ่งส่วนใหญ่ใช้ในการแก้ไขเอกสาร

ส่วนขยายไปยัง HTMLElement

อินเทอร์เฟซ HTMLElement ยังได้รับส่วนขยายต่างๆ:
  • getElementsByClassName ()
  • innerHTML
  • classList แนะนำเพื่อให้เข้าถึงได้ง่าย className... วัตถุที่ส่งคืนมีวิธีการ มี (), เพิ่ม (), ลบ () และ สลับ () เพื่อจัดการคลาสองค์ประกอบ
ขึ้นอยู่กับ

HTML5 ได้รับความสนใจจากนักพัฒนาเว็บเป็นอย่างมาก และความแตกต่างระหว่าง HTML5 และรุ่นก่อนก็คือ

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

ความสามารถด้านโครงสร้างของ HTML5 ทำให้โครงสร้างของเอกสารเว็บง่ายขึ้นและเข้าใจง่ายขึ้นและโค้ดก็สะอาดขึ้นมาก แทนที่จะใช้ div ที่ใช้ใน HTML 4.01 คุณสามารถใช้แท็กเช่นส่วนหัว "title", nav "navigation", ส่วน "ส่วนเอกสาร", บทความ "เนื้อหาไซต์", นอกเหนือจาก "เนื้อหาไซต์" และส่วนท้าย "ส่วนท้ายของไซต์"

องค์ประกอบใหม่ทำให้สามารถอธิบายส่วนหัวส่วนท้ายบล็อกไซต์ข้อความและส่วนอื่น ๆ ของเว็บไซต์ได้ดีขึ้น นวัตกรรมเหล่านี้ใช้เพื่อสร้างสารบัญและจัดระเบียบการนำทางที่มีประสิทธิภาพและใช้งานง่ายบนหน้าเว็บโดยไม่ทำให้โค้ดของคุณยุ่งเหยิงกับแท็กรองอื่น ๆ นี่คือตัวอย่างบางส่วน:

ตัวอย่าง 1. แทนที่จะเป็นสัญลักษณ์ HTML4.01 ที่ยุ่งยาก:

"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"\u003e,

ใน HTML5 จะดูสั้นลงมาก:

ตัวอย่างที่ 2. ใน HTML4 จำเป็นต้องใช้โค้ดต่อไปนี้เพื่อสร้างส่วนหัว: