HTML กับ XHTML
XHTML เป็น HTML เวอร์ชันที่เข้มงวดกว่าและใช้ XML มากกว่า
XHTML คืออะไร?
- XHTML ย่อมาจากEX tensible H yper T ext M arkup L anguage
- XHTML เป็น HTML . เวอร์ชันที่เข้มงวดกว่าและอิงตาม XML มากกว่า
- XHTML คือ HTML ที่กำหนดเป็นแอปพลิเคชัน XML
- XHTML รองรับเบราว์เซอร์หลักทั้งหมด
ทำไมต้อง XHTML?
XML เป็นภาษามาร์กอัปที่เอกสารทั้งหมดต้องทำเครื่องหมายอย่างถูกต้อง (เป็น "รูปแบบที่ดี")
XHTML ได้รับการพัฒนาเพื่อให้ HTML สามารถขยายได้มากขึ้นและยืดหยุ่นในการทำงานร่วมกับรูปแบบข้อมูลอื่นๆ (เช่น XML) นอกจากนี้ เบราว์เซอร์จะไม่สนใจข้อผิดพลาดในหน้า HTML และพยายามแสดงเว็บไซต์แม้ว่าจะมีข้อผิดพลาดบางประการในมาร์กอัป ดังนั้น XHTML จึงมาพร้อมกับการจัดการข้อผิดพลาดที่เข้มงวดกว่ามาก
หากคุณต้องการศึกษา XML โปรดอ่าน บทช่วย สอน XMLของ เรา
ความแตกต่างที่สำคัญที่สุดจาก HTML
- <!DOCTYPE> เป็นข้อบังคับ
- แอตทริบิวต์ xmlns ใน <html> เป็นข้อบังคับ
- <html>, <head>, <title> และ <body> เป็นข้อบังคับ
- องค์ประกอบจะต้องซ้อนกันอย่างถูก ต้องเสมอ
- ต้องปิด องค์ประกอบเสมอ
- องค์ประกอบจะต้องเป็นตัวพิมพ์เล็ก เสมอ
- ชื่อแอตทริบิวต์ต้องเป็นตัวพิมพ์เล็ก เสมอ
- ค่าแอตทริบิวต์ต้องยกมา เสมอ
- การลดขนาดแอตทริบิวต์เป็นสิ่งต้องห้าม
XHTML - <!DOCTYPE ....> เป็นข้อบังคับ
เอกสาร XHTML ต้องมีการประกาศ XHTML <!DOCTYPE>
ต้องมีองค์ประกอบ <html> <head> <title> และ <body> และแอตทริบิวต์ xmlns ใน <html> ต้องระบุเนมสเปซ xml สำหรับเอกสาร
ตัวอย่าง
นี่คือเอกสาร XHTML ที่มีแท็กขั้นต่ำที่จำเป็น:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Title of document</title>
</head>
<body>
some content here...
</body>
</html>
องค์ประกอบ XHTML ต้องซ้อนกันอย่างเหมาะสม
ใน XHTML อิลิเมนต์ต้องซ้อนกันอย่างเหมาะสมภายในกันและกัน เช่นนี้
ถูกต้อง:
<b><i>Some
text</i></b>
ผิด:
<b><i>Some
text</b></i>
ต้องปิดองค์ประกอบ XHTML เสมอ
ใน XHTML องค์ประกอบจะต้องปิดเสมอเช่นนี้:
ถูกต้อง:
<p>This is a paragraph</p>
<p>This is another paragraph</p>
ผิด:
<p>This is a paragraph
<p>This is another paragraph
XHTML องค์ประกอบที่ว่างเปล่าต้องถูกปิดเสมอ
ใน XHTML องค์ประกอบที่ว่างเปล่าจะต้องปิดเสมอเช่นนี้:
ถูกต้อง:
A break: <br />
A horizontal rule: <hr />
An image: <img src="happy.gif" alt="Happy face" />
ผิด:
A break: <br>
A horizontal rule: <hr>
An image: <img src="happy.gif" alt="Happy face">
องค์ประกอบ XHTML ต้องเป็นตัวพิมพ์เล็ก
ใน XHTML ชื่อองค์ประกอบจะต้องเป็นตัวพิมพ์เล็กเสมอ เช่นนี้
ถูกต้อง:
<body>
<p>This is a paragraph</p>
</body>
ผิด:
<BODY>
<P>This is a paragraph</P>
</BODY>
ชื่อแอตทริบิวต์ XHTML ต้องเป็นตัวพิมพ์เล็ก
ใน XHTML ชื่อแอตทริบิวต์ต้องเป็นตัวพิมพ์เล็กเสมอ เช่นนี้
ถูกต้อง:
<a href="https://www.w3schools.com/html/">Visit our HTML tutorial</a>
ผิด:
<a HREF="https://www.w3schools.com/html/">Visit our HTML tutorial</a>
ค่าแอตทริบิวต์ XHTML ต้องยกมา
ใน XHTML ค่าแอตทริบิวต์จะต้องอ้างอิงเสมอ เช่นนี้
ถูกต้อง:
<a href="https://www.w3schools.com/html/">Visit our HTML tutorial</a>
ผิด:
<a href=https://www.w3schools.com/html/>Visit our HTML tutorial</a>
การลดขนาดแอตทริบิวต์ XHTML เป็นสิ่งต้องห้าม
ใน XHTML ห้ามลดขนาดแอตทริบิวต์:
ถูกต้อง:
<input type="checkbox" name="vehicle" value="car" checked="checked" />
<input type="text" name="lastname" disabled="disabled" />
ผิด:
<input type="checkbox" name="vehicle" value="car" checked />
<input type="text" name="lastname" disabled />