Hypertext Markup Language (HTML) เป็นเทคโนโลยีหลักสำหรับเว็บตั้งแต่ช่วงต้นทศวรรษ 1990 Tim Berners-Lee สร้าง HTML ในปี 1989 เป็นวิธีที่ง่ายแต่มีประสิทธิภาพในการเข้ารหัสเอกสารอิเล็กทรอนิกส์ อันที่จริง จุดประสงค์ดั้งเดิมของเว็บเบราว์เซอร์คือเพื่อทำหน้าที่เป็นผู้อ่านเอกสารดังกล่าว สองทศวรรษต่อมา ตัวบราวเซอร์เองได้กลายเป็นประตูสู่โลกของสื่อออนไลน์ นั่นเป็นเหตุผลที่ HTML5 ไม่ได้เป็นเพียงการแก้ไขอีก HTML แต่มาตรฐานที่ครอบคลุมสำหรับวิธีการทำงานของหน้าเว็บ
เพื่อให้เข้าใจถึงสิ่งที่ทำให้ HTML5 ไม่เหมือนใคร ให้ย้อนเวลากลับไปเล็กน้อย ย้อนกลับไปในปี 1994 HTML ยังคงอยู่ในการแก้ไขครั้งแรก Mosaic และ Netscape ครองตลาดเบราว์เซอร์ และคนส่วนใหญ่ยังไม่เคยสัมผัสสิ่งใหม่ที่เรียกว่าเวิลด์ไวด์เว็บ ในปีนั้น ผู้สร้าง HTML Berners-Lee เป็นหัวหน้ากลุ่มมาตรฐานเว็บที่จัดตั้งขึ้นใหม่ ซึ่งรู้จักกันในชื่อ World Wide Web Consortium (W3C)
แม้ว่า W3C จะเป็นหน่วยงานมาตรฐานที่ได้รับการยอมรับในปัจจุบัน แต่ผู้เล่นเชิงพาณิชย์ในตลาดเบราว์เซอร์ในปี 1990 ส่วนใหญ่เพิกเฉยต่อมาตรฐานเหล่านั้นและจุดประกายเส้นทางของตัวเอง ภายในปี 1995 W3C ได้เผยแพร่การแก้ไขมาตรฐาน HTML ครั้งที่สอง และเว็บผู้มาใหม่อย่างMicrosoftก็ได้รับความนิยมจากเบราว์เซอร์ Internet Explorer (IE) Microsoft ละเลยมาตรฐานเป็นส่วนใหญ่ และ Netscape พยายามรักษาส่วนแบ่งการตลาดที่น่านับถือในขณะที่ IE เริ่มครอบงำ [แหล่งที่มา: Harris]
ในช่วงสงครามเบราว์เซอร์ช่วงแรกๆ เหล่านี้ นักพัฒนาเว็บถูกท้าทายให้ไซต์ของตนเข้ากันได้กับเบราว์เซอร์หลักรุ่นใหม่ๆ แต่ละตัว ตลอดจนเบราว์เซอร์ Opera และ Apple Safari ที่ใช้งานน้อยกว่า แม้ว่า W3C จะเผยแพร่ HTML 3.2 ในปี 1997 ตามด้วย HTML 4 ในปี 1998 การปฏิบัติตามมาตรฐานนั้นดูมีความสำคัญน้อยกว่าการรักษาคุณลักษณะเฉพาะของเบราว์เซอร์ สิ่งนี้ดำเนินต่อไปจนถึงปี 2546 เมื่อมูลนิธิ Mozilla ที่ขับเคลื่อนโดยชุมชนทำลายเทรนด์ หลังจากเปิดตัวเบราว์เซอร์ Mozilla ดั้งเดิม ตามด้วยเบราว์เซอร์Firefoxในปี 2547 Mozilla ได้แฮ็กอย่างรวดเร็วจากการครอบงำของ IE นอกจากนี้ เบราว์เซอร์ใหม่เหล่านี้ยังปฏิบัติตามมาตรฐาน W3C ที่มีอยู่จริงในขณะทำเช่นนั้น
ในขณะที่ Firefox ของ Mozilla เติบโตอย่างต่อเนื่องโดยใช้มาตรฐาน HTML 4 ที่ล้าสมัย Mozilla เข้าร่วม Apple และ Opera ในปี 2547 เพื่อจัดตั้งกลุ่มที่เรียกว่า Web Hypertext Application Technology Working Group (WHATWG) เป้าหมายของ WHATWG คือการรักษาการพัฒนา HTML ให้คงอยู่ แม้ว่าในตอนแรกจะลังเล แต่ W3C ก็เข้าร่วมการฟื้นฟู HTML ในปี 2549 WHATWG และ W3C ได้รวมข้อกำหนดที่มีอยู่สำหรับ HTML และ XHTML เข้าด้วยกัน และพัฒนาเพิ่มเติมเพื่อสร้างข้อกำหนด HTML5 ใหม่ ปัจจุบันข้อกำหนดดังกล่าวได้รับการบำรุงรักษาและเผยแพร่โดย W3C [แหล่งที่มา: W3C , WHATWG ]
บทความนี้สำรวจเทคโนโลยี HTML5 ใหม่นี้ เราจะดู XHTML และเทคโนโลยีอื่น ๆ ที่เข้าสู่ HTML5 และครอบคลุมประเด็นพื้นฐานของวิธีใช้ HTML5 เพื่อสร้างเนื้อหาเว็บที่น่าดึงดูดและเป็นไปตามมาตรฐาน นอกจากนี้เรายังจะตรวจสอบวิธีที่น่าตื่นเต้นบางอย่างที่ผู้คนใช้ HTML5 บนเว็บ เริ่มต้นด้วยการดูเป้าหมายของ HTML5 และทำไมมันจึงเป็นมากกว่าแค่ HTML
- HTML5 ก้าวไปไกลกว่า HTML
- HTML5 Foundation Technologies
- เนื้อหา HTML พื้นฐาน
- แบบฟอร์ม
- องค์ประกอบความหมาย
- องค์ประกอบของสื่อและการแข่งขันแฟลช
- ผ้าใบ
- การสร้างลุคด้วย CSS3
- JavaScript เป็นส่วนประกอบกลาง
- เทคโนโลยีเว็บแอปพลิเคชัน
- การพิสูจน์แนวคิดที่ก้าวล้ำ
HTML5 ก้าวไปไกลกว่า HTML
โดยตัวมันเอง HTML มุ่งเน้นไปที่การนำเสนอเอกสารแบบคงที่ ซึ่งหมายถึงข้อความ ลิงก์ และอื่นๆ ผ่าน HTML 4 มาตรฐาน HTML เป็นหนึ่งเดียวกับไวยากรณ์ HTML ที่ใช้ในการบรรลุวัตถุประสงค์นี้ มาตรฐาน HTML5 มีเป้าหมายที่กว้างกว่ามากในการอธิบายเนื้อหา สไตล์ และอินเทอร์เฟซของแอปพลิเคชันที่อยู่เบื้องหลังหน้าเว็บเมื่อโหลดในเบราว์เซอร์ของคุณ โดยเฉพาะอย่างยิ่ง HTML5 สร้างไวยากรณ์เดียวสำหรับการโต้ตอบกับองค์ประกอบทั้งหมดที่หน้าเว็บโหลดลงในหน่วยความจำของคอมพิวเตอร์ของคุณ
อาจมีจุดที่ทำให้เกิดความสับสน เราควรชี้แจงเกี่ยวกับคำว่า "HTML5" ก่อนดำเนินการต่อ มีภาษามาร์กอัปเวอร์ชันใหม่ที่เรียกว่า HTML5 อย่างไรก็ตาม ภาษานั้นเป็นเพียงส่วนหนึ่งของมาตรฐานที่กว้างขึ้นซึ่งใช้ชื่อ HTML5 ร่วมกัน บทความนี้ครอบคลุมองค์ประกอบทั้งหมดของมาตรฐาน HTML5 ซึ่งภาษา HTML5 เป็นจุดศูนย์กลาง
เมื่อคำนึงถึงความแตกต่างนั้น เบราว์เซอร์จะโหลดหน้าที่เขียนตามมาตรฐาน HTML5 ที่ใหม่กว่าและไม่ใช่ภาษา HTML 4 ที่มีมายาวนานอย่างไร ท้ายที่สุด เรามักจะพึ่งพาเบราว์เซอร์ของเราในการโหลดหน้าเว็บโดยไม่ต้องกังวลเกี่ยวกับ HTML ที่อยู่เบื้องหลัง คำตอบนั้นง่ายมาก ตราบใดที่ตัวเบราว์เซอร์เองสามารถรองรับ HTML5 ได้ ก็สามารถจัดการทุกอย่างที่คุณสนใจโดยไม่จำเป็นต้องแยกความแตกต่างระหว่างการแก้ไข HTML
เพื่อทำให้สิ่งมหัศจรรย์นี้เกิดขึ้น มาตรฐาน HTML5 ได้รวมเอาเทคโนโลยีใหม่ๆ เวอร์ชันใหม่ๆ เข้าด้วยกันเพื่อบรรลุเป้าหมายร่วมกัน เป้าหมายเหล่านี้รวมถึงสิ่งต่อไปนี้:
- ทำให้ภาษาเรียบง่ายและใช้งานง่าย
- ตรวจสอบให้แน่ใจว่ารหัสนั้นอ่านและบำรุงรักษาง่าย
- การกำหนดที่อยู่หน้าเป็นแอปพลิเคชันแบบโต้ตอบแทนที่จะเป็นเอกสารแบบคงที่
- อาศัย Cascading Style Sheets (CSS) สำหรับการจัดรูปแบบเนื้อหา
- การรับรู้ JavaScript เป็นส่วนประกอบสคริปต์กลางสำหรับเว็บเพจ Web
- รวบรวมเนื้อหาแบบไดนามิกจากเทคโนโลยีฝั่งเซิร์ฟเวอร์ เช่น PHP และ ASP
เมื่อคุณทราบแล้วว่า HTML5 เป็นมากกว่ามาร์กอัป HTML เอง เรามาตรวจสอบเทคโนโลยีพื้นฐานในมาตรฐานกัน
HTML5 Foundation Technologies
ภาษามาร์กอัปใช้ชุดแท็กเพื่อทำเครื่องหมายองค์ประกอบในไฟล์ มาร์กอัปอาศัยโมเดลบางประเภทที่กำหนดว่าองค์ประกอบเหล่านั้นคืออะไรและใช้งานอย่างไร เนื่องจาก HTML เป็นเรื่องเกี่ยวกับการเข้ารหัสเอกสารมาโดยตลอด จึงอาศัยสิ่งที่เรียกว่า document object model (DOM) DOM รวมอยู่ในแอปพลิเคชันเว็บเบราว์เซอร์เอง ดังนั้น ภาษามาร์กอัปเป็นเพียงวิธีหนึ่งในการให้คำแนะนำเบราว์เซอร์ตามรูปแบบที่เข้าใจแล้ว
เพื่อให้เข้าใจความสัมพันธ์ระหว่าง DOM และ HTML ได้ดีขึ้น ให้คิดว่า DOM เป็นกล่องตรายาง แต่ละตราประทับเป็นองค์ประกอบที่แตกต่างกันภายใน DOM แต่ละหน้าที่เขียนด้วย HTML เป็นเพียงชุดของรอยประทับที่สร้างจากตราประทับ ซึ่งเต็มไปด้วยเนื้อหาที่คุณกำหนดเอง เว็บเบราว์เซอร์สามารถแสดงอะไรก็ได้ที่สร้างจากตราประทับในกล่องนั้น
ในทางเทคนิค DOM คือ Application Programming Interface (API) ที่ให้วิธีการที่เป็นกลางกับแพลตฟอร์มในการประมวลผลเอกสาร HTML หรือ XML (Extensible Markup Language หรือ XML มีลักษณะคล้ายกับ HTML แต่ช่วยให้โปรแกรมเมอร์เพิ่มชุดองค์ประกอบที่กำหนดเองซึ่งคุณสามารถใช้ในเอกสารได้) มาตรฐาน HTML5 ต้องใช้ DOM ที่เรียกว่า DOM5 HTML เบราว์เซอร์Chrome , Firefox , IE, Safari และ Opera เวอร์ชันล่าสุดที่เตรียมพร้อมสำหรับการเติบโตใน HTML5 สามารถประมวลผลหน้าทั้งหมดภายใต้ DOM5 HTML ได้
รากฐานที่สำคัญอีกประการสำหรับ HTML5 คือประเภท Multipurpose Internet Mail Extensions ( MIME ) ที่เกี่ยวข้อง MIME เป็นมาตรฐานของ Internet Engineering Task Force (IETF) สำหรับการแจ้งเตือนซอฟต์แวร์ที่ใช้งานอินเทอร์เน็ตได้ว่ามีเนื้อหาประเภทใดที่พยายามประมวลผล โดยทั่วไปจะสอดคล้องกับไฟล์บางประเภท เช่น เอกสาร HTML หรือไฟล์เสียง MP3
นักพัฒนาเว็บระบุประเภท MIME เมื่อเข้ารหัสหน้าเว็บ สิ่งนี้จะแจ้งให้เบราว์เซอร์โหลดไฟล์ที่เกี่ยวข้องอย่างเหมาะสมตามประเภทของไฟล์ MIME มีสองประเภทที่เข้าร่วม DOM5 HTML เพื่อสร้างพื้นฐานของมาตรฐาน HTML5 ใหม่: ประเภท HTML MIME (ข้อความ/html) และประเภท XML MIME (แอปพลิเคชัน/xhtml+xml) HTML5 มีการอัปเดตในไวยากรณ์สำหรับ MIME ทั้งสองประเภทนี้
กล่าวโดยย่อ เทคโนโลยีพื้นฐานในมาตรฐาน HTML5 คือ DOM5 HTML และประเภท MIME ที่เข้ากันได้กับ HTML5 สำหรับ HTML และ XML ต่อไป มาดูวิธีการรวมเว็บเพจโดยใช้ HTML5 กัน
เนื้อหา HTML พื้นฐาน
อย่างน้อย HTML5 จะรวมเวอร์ชัน 5 ของไวยากรณ์ HTML พื้นฐาน โค้ดตัวอย่างในแถบด้านข้างของหน้านี้แสดงให้เห็นว่าโค้ด HTML นี้อาจมีลักษณะอย่างไรสำหรับหน้าเว็บพื้นฐาน เมื่อคุณท่องเว็บ ให้ใช้ "ดูแหล่งที่มา" หรือตัวเลือกที่คล้ายกันในเบราว์เซอร์ของคุณเพื่อดู HTML (และโค้ดอื่นๆ) ที่โหลดไว้เพื่อสร้างหน้าที่คุณกำลังดูอยู่ โค้ดทั้งหมดที่แสดงในตัวอย่างของเรายังเข้ากันได้กับ HTML 4 แบบย้อนหลัง ซึ่งหมายความว่าไม่มีส่วนเพิ่มเติมใหม่ใน HTML5
แม้ว่าจะไม่มีอยู่ในทุกหน้าเว็บ แต่คุณควรเริ่มต้นไฟล์ HTML ด้วยการประกาศประเภทเอกสาร (doctype) ตามที่แสดงในตัวอย่าง ซึ่งเป็นการยืนยันว่าเบราว์เซอร์ควรคาดหวัง HTML มาตรฐานเมื่อแปลเอกสาร นักพัฒนาซอฟต์แวร์บางรายใช้ส่วนขยายของมาตรฐาน HTML ซึ่งใช้ไฟล์ข้อกำหนดประเภทเอกสาร (DTD) หากเป็นกรณีนี้ ผู้พัฒนาจะระบุตำแหน่งของ DTD ให้เป็นส่วนหนึ่งของประเภทเอกสารนี้
นอกจากประเภทเอกสารแล้ว โค้ดที่เหลือในตัวอย่างคือไวยากรณ์ HTML มาตรฐาน หากคุณไม่คุ้นเคยกับไวยากรณ์นี้ โปรดดูบทความHow Web Pages Work ของเรา
องค์ประกอบพื้นฐานเหล่านี้ใน HTML5 มีอะไรใหม่บ้าง นี่คือรายการ และเราจะพิจารณาอย่างละเอียดในแต่ละหน้าที่ตามมา
- องค์ประกอบแบบฟอร์มใหม่และที่อัปเดต - การวางโครงสร้างแบบฟอร์มและการประมวลผลอินพุตแบบฟอร์มจากผู้ใช้
- องค์ประกอบเชิงความหมาย -- การระบุเนื้อหาตามบทบาทภายในหน้าเว็บ
- องค์ประกอบของสื่อ -- การฝังเสียง วิดีโอ และสื่อโต้ตอบอื่นๆ โดยไม่จำเป็นต้องใช้ส่วนขยายเบราว์เซอร์ของบริษัทอื่น
- องค์ประกอบทับทิม -- สนับสนุนความเป็นสากลสำหรับหน้าเว็บภาษาเอเชีย
แบบฟอร์ม
แม้ว่ารูปแบบ (ส่วนต่างๆ ของเว็บไซต์ที่ผู้ใช้สามารถป้อนข้อมูลเฉพาะ เช่น ชื่อ ที่อยู่ ฯลฯ) เป็นส่วนหนึ่งขององค์ประกอบแรกสุดที่มีอยู่ใน HTML แต่ก็ขาดคุณสมบัติที่มีประโยชน์มากมายก่อน HTML5 เพื่อชดเชยสิ่งนี้ นักพัฒนาบุคคลที่สามได้สร้างซอฟต์แวร์เว็บฟอร์มที่ทำให้ฟอร์ม HTML พื้นฐานดูเหมือนเกือบจะล้าสมัย HTML5 เติมชีวิตชีวาให้กับฟอร์มด้วยองค์ประกอบรูปแบบใหม่ ประเภทอินพุต และแอตทริบิวต์สำหรับองค์ประกอบที่มีอยู่
โดยไม่ต้องแยกความแตกต่างระหว่างไวยากรณ์เก่าและใหม่ ให้ตรวจสอบวิธีการโดยรวมเพื่อสร้างแบบฟอร์มสำหรับหน้าเว็บของคุณโดยใช้ HTML5 ต่อไปนี้เป็นขั้นตอนที่แนะนำในการเริ่มต้น:
- สร้างบล็อคแบบฟอร์มโดยใช้
- กำหนดกลุ่มของฟิลด์ภายในแบบฟอร์มโดยใช้
- จัดวางแต่ละฟิลด์ในชุดฟิลด์โดยใช้
- ภายในแท็กป้ายกำกับแต่ละป้าย ให้เพิ่มชื่อช่องตามที่คุณต้องการให้แสดงพร้อมเครื่องหมาย แท็กสำหรับฟิลด์เอง
- ใช้แอตทริบิวต์ type ภายในแท็กอินพุต () ที่แจ้งให้เบราว์เซอร์ตรวจสอบการป้อนข้อมูลของผู้ใช้ตามประเภทนั้น ซึ่งช่วยลดความจำเป็นในการใส่โค้ดเพิ่มเติมเพื่อจัดการกับการตรวจสอบและพร้อมท์สำหรับการกลับเข้ามาใหม่ HTML5 ประกอบด้วยประเภทอินพุตต่อไปนี้: วันที่, เวลา, วันที่เวลา, วันที่เวลาท้องถิ่น, เดือน, สัปดาห์, หมายเลข, อีเมล, โทรศัพท์, url, ช่วง, สี และการค้นหา คุณยังสามารถใช้แอตทริบิวต์รูปแบบที่มีนิพจน์ทั่วไปเพื่อสร้างรูปแบบการตรวจสอบความถูกต้องที่กำหนดเองได้
- ระบุฟิลด์ที่จำเป็นโดยการเพิ่มแอตทริบิวต์ที่จำเป็นสำหรับองค์ประกอบอินพุต
- ใช้แอตทริบิวต์ออโต้โฟกัสเพื่อตั้งค่าองค์ประกอบอินพุตเฉพาะเป็นองค์ประกอบแรกในแบบฟอร์ม นี่คือตำแหน่งที่เว็บเบราว์เซอร์จะวางเคอร์เซอร์ของผู้ใช้โดยอัตโนมัติหลังจากโหลดแบบฟอร์ม
- ใช้แอตทริบิวต์ตัวยึดตำแหน่งหากต้องการเพิ่มคำแนะนำข้อความเกี่ยวกับสิ่งที่ต้องป้อนในฟิลด์ที่กำหนด
- ตั้งค่ารูปแบบ CSS สำหรับ ":required" และ ":invalid" เพื่อให้ผู้ใช้มองเห็นข้อมูลหรืออินพุตที่ขาดหายไปซึ่งไม่สามารถตรวจสอบความถูกต้องสำหรับประเภทอินพุตที่กำหนด
ตรวจสอบคู่มืออ้างอิง HTML5 ล่าสุดสำหรับรายการองค์ประกอบของแบบฟอร์มและแอตทริบิวต์ทั้งหมด นอกจากนี้ โปรดทราบว่าการรองรับบางฟิลด์ของฟอร์มจะแตกต่างกันไปตามเว็บเบราว์เซอร์ อย่าลืมทดสอบแบบฟอร์มของคุณในเบราว์เซอร์แต่ละประเภทที่คุณต้องการให้เว็บไซต์ของคุณรองรับ
แม้ว่าองค์ประกอบแบบฟอร์ม HTML จะมีคุณลักษณะมากกว่าในเวอร์ชัน 5 แต่ประเภทองค์ประกอบถัดไปจะเป็นรูปแบบใหม่ใน HTML5
องค์ประกอบความหมาย
องค์ประกอบเชิงความหมายใน HTML5 เป็นองค์ประกอบที่อ้างอิงถึงความหมายของเนื้อหาบางอย่างตามที่ชื่อบอกไว้ การใช้แท็กเพียงอย่างเดียวไม่เพียงพอ เนื่องจากเว็บไซต์ส่วนใหญ่ในปัจจุบันมีเนื้อหาหลายประเภทในหน้าเดียว นักพัฒนาเว็บต้องใช้กฎแยกกันสำหรับลักษณะหรือพฤติกรรมของเนื้อหาแต่ละประเภท
ไม่มีองค์ประกอบเชิงความหมาย นักพัฒนาเว็บได้ใช้
เมื่อเวลาผ่านไป เนื้อหาบางประเภทกลายเป็นเรื่องธรรมดามากในเว็บไซต์ เช่น ส่วนหัว ส่วนท้าย เมนูและจุดนำทาง HTML5 รวมสิ่งเหล่านี้โดยการเพิ่มองค์ประกอบความหมายมาตรฐาน ซึ่งหมายความว่าคุณสามารถแบ่งบล็อกของคุณออกเป็นองค์ประกอบเชิงความหมายที่เป็นประโยชน์มากกว่าชุดของ
ต่อไปนี้คือรายการองค์ประกอบหน้าความหมายพร้อมคำจำกัดความสั้นๆ ของแต่ละองค์ประกอบ อย่าลืมหาการอ้างอิง HTML5 ที่คุณเชื่อถือได้สำหรับรายการแอตทริบิวต์ที่ถูกต้องและองค์ประกอบย่อยสำหรับองค์ประกอบความหมายแต่ละรายการ
องค์ประกอบบล็อก:
- ส่วน -- การแบ่งหน้าทั่วไปที่ใช้เพื่อช่วยแบ่งกลุ่มเนื้อหาที่ใหญ่ขึ้น
- บทความ -- เนื้อหาที่มาจากแหล่งภายนอก บางครั้งเพิ่มแบบไดนามิกในการโหลดหน้าเว็บโดยใช้สคริปต์ตัวรวบรวม
- ส่วนหัวและส่วนท้าย -- บล็อกที่ปรากฏที่ด้านบนและด้านล่างของแต่ละหน้า
- hgroup -- การจัดกลุ่มของส่วนหัวที่เกี่ยวข้องหลายรายการ เช่น ชื่อและคำบรรยาย
- เมนู -- รายการคำสั่ง (ดูองค์ประกอบคำสั่ง) และแอตทริบิวต์ที่ระบุพฤติกรรมของเมนู
- nav - ระบุบล็อกที่ใช้สำหรับการนำทางเว็บไซต์เท่านั้น โดยทั่วไปจะมีรายการลิงก์ไปยังหน้าอื่น ๆ ในไซต์ที่ไม่เรียงลำดับ
- ที่อยู่ -- รวมข้อมูลติดต่อสำหรับผู้เขียนเนื้อหาภายในบล็อก เช่น บทความ ส่วน หรือเนื้อหาหน้าทั้งหมด
- กัน -- ระบุว่าเนื้อหาควรได้รับการปฏิบัติเหมือนเป็นแถบด้านข้าง
องค์ประกอบแบบอินไลน์:
- สรุปและรายละเอียด -- สลับระหว่างทีเซอร์/บทสรุปและรายละเอียดทั้งหมดสำหรับเนื้อหาเดียวกัน
- รูปและคำอธิบายภาพ -- องค์ประกอบที่ใช้เพื่อปรับใช้พฤติกรรมทั่วไปกับรูปภาพ ไม่ว่าจะใช้องค์ประกอบสื่อใด (img, svg หรือ canvas) เพื่อรวมไว้
- เวลา -- ข้อความแสดงวันที่ในปฏิทิน เวลานาฬิกา หรือทั้งสองอย่าง จัดรูปแบบเพื่อให้เบราว์เซอร์สามารถปรับความแตกต่างของเขตเวลาได้หากจำเป็น
- คำสั่ง -- ป้ายกำกับและพฤติกรรมที่เกี่ยวข้องกับป้ายกำกับนั้นเมื่อคุณใช้แป้นพิมพ์หรือเมาส์เพื่อโต้ตอบกับป้ายกำกับนั้น โดยทั่วไปจะใช้ภายในบล็อกเมนู
- dfn -- คำที่กำหนดในเนื้อหา
- wbr - แท็กที่ระบุตำแหน่งที่ยอมรับได้ในการแบ่งข้อความภายในคำเมื่อตัดเป็นหลายบรรทัด
องค์ประกอบเชิงความหมายถูกสร้างขึ้นเพื่อปรับปรุงองค์ประกอบ HTML ทั่วไป อย่างไรก็ตาม ประเภทองค์ประกอบใหม่ถัดไปมีจุดมุ่งหมายเพื่อทดแทนส่วนขยายสื่อของบุคคลที่สามในเว็บเบราว์เซอร์
อวกาศหรือไม่มีที่ว่าง?
คุณอาจสังเกตเห็นว่าเมื่อเราอ้างถึง HTML เวอร์ชันอื่น เช่น HTML 4 จะมีช่องว่างนำหน้าตัวเลข ในขณะที่ไม่มีช่องว่างในการอ้างอิงถึง HTML5 มีการถกเถียงและถกเถียงกันมากมายเกี่ยวกับปัญหานี้ในชุมชน HTML แต่ในที่สุด ทั้งWHATWGและW3C ก็ใช้HTML5 เป็นตัวสะกดอย่างเป็นทางการเพื่อให้เอกสารมีความสอดคล้องกัน
องค์ประกอบของสื่อและการแข่งขันแฟลช
หนึ่งในพูดคุยเกี่ยวกับส่วนใหญ่คุณสมบัติของ HTML5 เป็นวิธีการใหม่ในการสื่อการฝังบนหน้าเว็บ เราจะมาดูแอปพลิเคชันที่น่าทึ่งของคุณลักษณะ HTML5 นี้ในบทความนี้ HTML5 ทำการฝังนี้สำเร็จโดยไม่ต้องใช้ปลั๊กอินเบราว์เซอร์ภายนอก ต่อไปนี้เป็นองค์ประกอบสื่อที่มีอยู่ใน HTML5:
- เสียง -- ฝังเสียงในหน้าและรวมถึงแอตทริบิวต์สำหรับระบุวิธีการเล่น รูปแบบไฟล์ที่รองรับจะแตกต่างกันไปตามแต่ละเว็บเบราว์เซอร์
- วิดีโอ -- ฝังวิดีโอในหน้าและรวมถึงแอตทริบิวต์สำหรับระบุวิธีการเล่น รูปแบบไฟล์ที่รองรับจะแตกต่างกันไปตามแต่ละเว็บเบราว์เซอร์
- แหล่งที่มา - ใช้กับองค์ประกอบเสียงหรือวิดีโอเพื่อระบุแหล่งที่มา สามารถระบุแหล่งที่มาได้หลายแหล่งสำหรับรายการเดียว
- ฝัง -- ฝังและระบุประเภทสื่อสำหรับเนื้อหาที่อาจขาดการสนับสนุนภายในองค์ประกอบสื่ออื่น ๆ
- ผ้าใบ -- แยกส่วนของหน้าหรือหน้าจอคอมพิวเตอร์ที่จาวาสคริปต์สามารถวาดภาพ ต่อไป เราจะหาข้อมูลเพิ่มเติมเกี่ยวกับวิธีการทำงานของฟีเจอร์ใหม่ที่สำคัญนี้
- svg -- ฝังกราฟิกแบบเวกเตอร์ที่เข้ารหัสด้วยภาษามาร์กอัป SVG ทำให้สามารถปรับขนาดไดนามิกตามพื้นที่ของหน้าที่โหลดโดยไม่สูญเสียคุณภาพกราฟิก
ในขณะที่ HTML5 พัฒนาขึ้น ผู้เชี่ยวชาญด้านการตลาดได้ตั้งคำถามว่าจะแทนที่ Flash ซึ่งปัจจุบันควบคุมโดย Adobe หรือไม่ Flash เป็นโปรแกรมเล่นสื่อที่คุณสามารถเพิ่มเป็นปลั๊กอินให้กับเว็บเบราว์เซอร์ของคุณได้ เนื่องจาก Flash มีคุณลักษณะทั้งหมดที่จำเป็นสำหรับไซต์ในการฝังสื่อประเภทต่างๆ ไซต์ต่างๆ เช่น YouTube จึงต้องพึ่งพาสื่อดังกล่าวมาหลายปี มีแม้กระทั่งเว็บแอปพลิเคชันบางตัวที่ใช้ Flash ทั้งหมดเพื่อขับเคลื่อนอินเทอร์เฟซแบบโต้ตอบ การนำ Flash ไปใช้แพร่หลายมากในปี 2550 ซึ่งเมื่อมีการเปิดตัว Apple iPhone ที่คาดการณ์ไว้ ผู้บริโภคจำนวนมากไม่พอใจที่ได้ยินว่าระบบปฏิบัติการ Apple iOS ไม่รองรับ Flash
เมื่อGoogleซึ่งเป็นแบรนด์ที่ใหญ่ที่สุดบนอินเทอร์เน็ต มุ่งพัฒนาแอปด้วย HTML5 เป็นอันดับแรก ผู้สนับสนุน Flash สังเกตเห็น ก่อน HTML5 ภัยคุกคามเพียงอย่างเดียวต่อการครอบงำของ Flash คือนักพัฒนาเว็บแอปพลิเคชันที่เต็มใจที่จะสร้างและรักษาทางเลือก HTML/JavaScript ที่กำหนดเอง ด้วย HTML5 การปรับแต่งที่ยุ่งยากเช่นนี้ไม่จำเป็นอีกต่อไปเมื่อสร้างประสบการณ์สื่อเชิงโต้ตอบเพื่อแข่งขันกับเทคโนโลยี Flash
ใครจะชนะ: Flash หรือ HTML5 คำตอบสั้น ๆ คือ "ไม่" แต่ละเทคโนโลยีมีคุณสมบัติข้อดีและข้อเสียของตัวเอง นอกจากนี้ Adobe และ Google ยังได้ทำงานเกี่ยวกับเครื่องมือแปลง Flash เป็น HTML5 ในขณะที่เขียนบทความนี้ ดูเหมือนว่าแม้ว่า HTML5 จะได้รับสถานะ แต่ Flash ก็มีแนวโน้มที่จะรักษาความนิยมของตัวเองไว้สักระยะเช่นกัน
ข้ามไปที่หน้าถัดไปที่เราจะแบ่งองค์ประกอบผ้าใบและวิธีใช้องค์ประกอบในเว็บเพจ HTML5 ของคุณ
ผ้าใบ
คุณลักษณะใหม่ที่สำคัญที่สุดอย่างหนึ่งของ HTML5 คือผืนผ้าใบ คุณลักษณะพื้นที่ทำงานช่วยให้คุณสามารถระบุส่วนของหน้าเว็บวาดเนื้อหาภายใน และเพิ่มฟังก์ชันแบบโต้ตอบ ทั้งหมดนี้เป็นไปได้ด้วยผ่านการรวมกันของ HTML และJavaScriptรหัส มาดูสามส่วนที่คุณต้องใช้ในการตั้งค่าแคนวาสใน HTML5:
ส่วนที่ 1:ใช้
ความกว้าง="400"
ความสูง="300>
หากคุณเห็นข้อความนี้ แสดงว่าเบราว์เซอร์ของคุณ
ไม่มีการสนับสนุนผ้าใบ HTML5
ส่วนที่ 2:สร้าง JavaScript ที่ดึงเนื้อหาลงในผืนผ้าใบ ต่อมา เราจะพบวิธีเพิ่มและจัดการโค้ด JavaScript ที่เชื่อมโยงกับเว็บเพจ HTML5 ในที่นี้ มาดูตัวอย่าง JavaScript บางส่วนที่คุณสามารถใช้สำหรับออบเจกต์ canvas ได้ รหัสต่อไปนี้วาดรูปสี่เหลี่ยมผืนผ้าภายในผืนผ้าใบด้านบน:
ฟังก์ชัน drawRectangle() {
var targetCanvas = document.getElementById("sampleCanvas");
var rectContext = sampleCanvas.getContext("2d");
rectContext.fillStyle = "สีน้ำเงิน";
rectContext.fillRect (50, 25, 150, 100);
}
ฟังก์ชันนี้วาดสี่เหลี่ยมสีน้ำเงินทึบภายในผืนผ้าใบของคุณ "var" สองบรรทัดสร้างตัวแปรที่คุณสามารถใช้ได้ รายการแรก (targetCanvas) ระบุองค์ประกอบผ้าใบที่คุณกำหนดเป้าหมายโดยใช้รหัสจาก HTML ที่สอง (rectContext) ตั้งค่าบริบทสองมิติสำหรับการวาดภาพ ลองนึกภาพบริบทว่าเป็นชั้นกระจกใสที่วางอยู่บนผืนผ้าใบ และคุณจะเรียกใช้ฟังก์ชันเพื่อวาดบนกระจกนั้น
บรรทัด "fillStyle" ระบุสีน้ำเงินตามชื่อ ซึ่ง HTML รู้จักและเชื่อมโยงกับสีที่มีชื่อสีใดสีหนึ่ง คุณยังสามารถใช้สี รูปแบบ หรือการไล่ระดับสีใดๆ ก็ได้ เช่นเดียวกับที่คุณทำเมื่อเขียนโค้ดสไตล์ใน HTML หรือ CSS เส้น "fillRect" วาดสี่เหลี่ยมผืนผ้าโดยเริ่มจากออฟเซ็ตจากด้านซ้ายบน ตัวเลขสองตัวแรกคือค่าออฟเซ็ต x และ y ราวกับว่าด้านบนซ้ายของผ้าใบอยู่ที่พิกัด (0,0) ตัวเลขสองตัวที่สองระบุความกว้างและความสูงของสี่เหลี่ยมผืนผ้าตามลำดับ
ส่วนที่ 3:เรียกใช้ฟังก์ชัน JavaScript จากโค้ด HTML สิ่งนี้ผูกสองชิ้นเข้าด้วยกัน คุณสามารถเรียกใช้ฟังก์ชันนี้ได้ทันทีที่โหลดหน้าเว็บ ซึ่งถือว่าสมเหตุสมผลหากคุณใช้พื้นที่ทำงานเพื่อวาดเนื้อหาในหน้าแบบโต้ตอบที่ต้องปรากฏทันทีที่หน้าเว็บโหลด อีกทางเลือกหนึ่งคือการสร้างปุ่ม เมนู หรือองค์ประกอบอื่นๆ ใน HTML ที่เรียกเหตุการณ์การวาด ต่อไปนี้คือตัวอย่างปุ่มที่คุณสามารถใช้เพื่อเรียกใช้สคริปต์ตัวอย่างด้านบน:
เจาะลึก HTML5มีคำแนะนำที่ง่ายต่อการปฏิบัติตามในการสร้างองค์ประกอบผ้าใบสำหรับหน้าเว็บของคุณ นอกจากนี้ การอ้างอิง HTML5 ที่เชื่อถือได้ควรมีแหล่งข้อมูลมากมายสำหรับการวาดภาพกราฟิกที่ซับซ้อน ทั้งแบบนิ่งและแบบเคลื่อนไหว หากคุณต้องการใช้ผืนผ้าใบใน HTML5 อย่างกว้างขวาง คุณจะต้องเขียนโปรแกรมใน JavaScript ได้อย่างสะดวกสบาย ต่อไป มาดูกันว่า CSS3 สร้างรูปลักษณ์ของเว็บเพจ HTML5 ได้อย่างไร
การสร้างลุคด้วย CSS3
องค์ประกอบ HTML แต่ละรายการมีแอตทริบิวต์จำนวนหนึ่งที่คุณใช้ในโค้ดเพื่อแก้ไขรูปลักษณ์หรือฟังก์ชันขององค์ประกอบนั้น สไตล์และแอตทริบิวต์ที่เกี่ยวข้องจะปรับขนาด สี ตำแหน่ง เส้นขอบ และลักษณะทางกายภาพอื่นๆ ขององค์ประกอบ ในช่วงหลายปีของอายุการใช้งานของเว็บ ผู้พัฒนาเว็บไซต์ได้นำแนวปฏิบัติในการแยกรูปแบบออกจากเนื้อหาอย่างกว้างขวาง การแยกส่วนนี้ทำให้นักพัฒนาได้รับประโยชน์ดังต่อไปนี้:
- โค้ดที่ต้องบำรุงรักษาน้อยลง: องค์ประกอบหลายรายการในหน้าเว็บหลายหน้าสามารถใช้สไตล์เดียวกันร่วมกันได้โดยไม่ต้องใส่รหัสการจัดสไตล์ซ้ำสำหรับแต่ละอัน
- การบำรุงรักษาที่ง่ายขึ้นเมื่อเวลาผ่านไป: การอัปเดตเป็นสไตล์ใหม่หรือแก้ไขสไตล์ที่มีอยู่ หมายถึงการเปลี่ยนรหัสการจัดรูปแบบเพียงชิ้นเดียว แทนที่จะอัปเดตแต่ละองค์ประกอบโดยใช้รหัสนั้น
ดังนั้น ในขณะที่การจัดรูปแบบสามารถวางให้สอดคล้องกับโค้ด HTML ทางเลือกที่นิยมมากขึ้นสำหรับนักพัฒนาเว็บคือการใช้ Cascading Style Sheets (CSS) เพื่อจัดการรหัสการจัดรูปแบบทั้งหมดที่เกี่ยวข้องกับเว็บไซต์ HTML สำหรับแต่ละหน้าสามารถอ้างอิงได้ตั้งแต่หนึ่งสไตล์ชีตขึ้นไป ซึ่งเบราว์เซอร์ของคุณควรโหลดเมื่อโหลดหน้าเว็บ สไตล์ชีตเหล่านี้ในรูปแบบของไฟล์ CSS มีวัตถุประสงค์เพื่อเลียนแบบสิ่งที่คุณอาจป้อนโดยใช้