เอกสาร HTML ที่ดีควรมีโครงสร้างชัดเจนตั้งแต่การประกาศมาตรฐาน เอกสารหลัก ส่วนข้อมูล metadata และส่วนแสดงผลจริงบนหน้าเว็บ โครงสร้างเหล่านี้ช่วยให้ browser, search engine และ assistive technology เข้าใจหน้าเว็บได้ถูกต้อง
<!DOCTYPE html><!DOCTYPE html> ใช้ประกาศว่าเอกสารนี้ใช้มาตรฐาน HTML5 ควรวางไว้บรรทัดแรกของไฟล์ HTML เพื่อให้ browser แสดงผลด้วย standards mode
<!DOCTYPE html>
หากไม่ประกาศ doctype browser อาจเข้าสู่ quirks mode ซึ่งอาจทำให้ CSS และ layout แสดงผลไม่ตรงตามมาตรฐาน
<html lang="th"><html> คือ root element ของเอกสาร HTML ส่วน lang="th" ระบุภาษาหลักของเอกสารว่าเป็นภาษาไทย
<html lang="th">
</html>
ประโยชน์ของ lang:
<head><head> เก็บข้อมูลเกี่ยวกับเอกสาร ไม่ใช่เนื้อหาหลักที่แสดงบนหน้าเว็บโดยตรง
ตัวอย่างข้อมูลที่มักอยู่ใน <head>:
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>หน้าแรกของฉัน</title>
<link rel="stylesheet" href="style.css">
<script src="app.js" defer></script>
</head>
รายการสำคัญ:
meta charset="utf-8" กำหนด encoding เพื่อรองรับภาษาไทยmeta name="viewport" ช่วยให้ responsive บนอุปกรณ์มือถือtitle แสดงชื่อหน้าใน browser tab และผลค้นหาlink ใช้เชื่อม CSSscript ใช้เชื่อม JavaScript โดยมักใช้ defer เพื่อให้โหลดหลัง parse HTML<body><body> คือพื้นที่แสดงเนื้อหาทั้งหมดที่ผู้ใช้เห็นและโต้ตอบได้ เช่น heading, paragraph, image, form, button และ section ต่าง ๆ
<body>
<h1>ยินดีต้อนรับ</h1>
<p>นี่คือหน้าเว็บแรกของฉัน</p>
</body>
<!DOCTYPE html>
<html lang="th">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>HTML5 Document</title>
<link rel="stylesheet" href="style.css">
<script src="app.js" defer></script>
</head>
<body>
<h1>การโปรแกรมบนเว็บ</h1>
<p>เริ่มต้นเรียนรู้ HTML5</p>
</body>
</html>
W3C Validator ใช้ตรวจสอบว่า HTML เขียนถูกต้องตามมาตรฐานหรือไม่ สามารถใช้ได้ที่ https://validator.w3.org/
ขั้นตอนโดยย่อ:
สร้างไฟล์ basic.html ที่มีโครงสร้าง HTML5 ครบถ้วน แล้วนำไปตรวจด้วย W3C Validator
<!DOCTYPE html> มีหน้าที่อะไรlang="th" ช่วยเรื่องใดบ้างmeta charset="utf-8" สำคัญกับภาษาไทยอย่างไรviewport meta tag เกี่ยวข้องกับ responsive design อย่างไร