สิ่งสำคัญที่สุดอย่างแรกของ XHTML เลยก็คือ DOCTYPE ครับ หรือการประกาศคุณลักษณะ ของหน้าเว็บนั่นเอง ที่ต้องประกาศ เพื่อให้เหล่า User Agents เข้าใจถูกต้องว่าเราเขียนเว็บมาด้วยภาษาอะไร ระดับไหนเป็นสำคัญ
DOCTYPE คือ คำสั่งภาษาอังกฤษ ยาว สองสามบรรทัด เวลาเราเปิดโปรแกรม อีดิทเตอร์ ใดๆ ขึ้นมาเขียนเว็บนั่นเอง (นับเฉพาะโปรแกรมที่มีให้นะครับ ไม่นับ Notepad หรือ EditPlus)
การประกาศ DOCTYPE สำหรับ XHTML มีที่ใช้บ่อย 3 ประเภท 4 ลักษณะ ไม่รวม XHTML Mobile 1.0 คือ
XHTML 1.0 Strict
XHTML 1.1
XHTML 1.0 Transitional
XHTML 1.0 Frameset
ซึ่งทั้ง 3 ประเภท 4 ลักษณะ ต่างกันที่รายละเอียด
แบบแรก คือ
1. XHTML 1.0 Strict
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
การใช้หน้าเว็บแบบ XHTML 1.0 Strict นี้ เหมาะสมจะใช้เมื่อคุณมั่นใจว่า หน้าเว็บที่เขียนนั้น ล้วนแล้วแต่เป็นโครงส้รางภาษาแบบ XHTML ทั้งสิ้น และอนุญาตให้ แต่งองค์ทรงเครื่องหน้าเว็บด้วย CSS เท่านั้น ครับ
ไม่สามารถเขียน <body bgcolor=black></body>
ได้
XHTML 1.1
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
ลักษณะการใช้ คล้ายกันกับ XHTML 1.0 Strict คือใช้ XHTML คู่กับ CSS
แต่ควรใช้เมื่อต้องการ เขียนโครงสร้างเว็บแบบ ใหม่ทั้งหมด (XML)
2. XHTML 1.0 Transitional
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
แบบนี้ อณุญาตให้เราใช้ HTML 4.0 ร่วมได้ สามารถเรียกใช้ทั้ง CSS กับ XHTML เช่น <body bgcolor=red></body>
หรือ เขียนแบบใช้ css <body style=”background-color: red;”>
อย่างนี้เป็นต้น<
ซึ่ง ข้อดีของ XHTML 1.0 Transitional คือการที่จะช่วยให้ บราวเซอร์ เก่าๆ โดยเฉพาะ IE6 นั้นสามารถ เข้าใจภาษา ได้ใกล้เคียงกัน และ เอาไปใช้ในกรณีที่ XHTML บาง tag ไม่สามารถใช้กับ บราวเซอร์เก่าๆ ได้ เราใช้ html คู่ไปได้
3. XHTML 1.0 Frameset
อันนี้ใชกับเฟรมครับ กรณีเอาหน้าเว็บมาแบบ เฟรม อาจจะพันตูกันเยอะเแยะ ครับ
หลายท่านอาจจะบอกว่า ไม่เห็นต้องเข้ารหัสตามที่ ผมกล่าวไว้เลย เว็บก็ยังดูได้ ไม่เห็นเพี้ยนซะหน่อย ครับ มันไม่เพี้ยน แต่ถ้าลองเอาไปตรวจ ตามมาตรฐาน W3C หละ ท่านเคยลองเอาหน้าเว็บเข้าไปตรวจกับเขาบ้างหรือยัง เมื่อผลตรวจหน้าเว็บออกมา อาจจะอึ้งเอาได้
สำหรับห้วงเวลานี้ ผมขอแนะนำ XHTML 1.0 Transitional เป็นตัวเลือกแรกก่อนนะครับ แต่สำหรับใคร มั่นใจว่า ตะลุย XHTML, CSS ผ่าน แบบ Strict ได้ก็ XHTML 1.0 Strict ไปก่อนเลยครับ ไม่ว่ากัน แต่ส่วนตัวผมที่ยังไม่ใช้ XHTML 1.0 Strict เพราะยังเกรงใจผู้ใช้ IE6 อยู่ครับ
** แก้ไขเรื่อง XHTML 1.1 เพิ่มเติม
14 Responses to DOCTYPE ข้ามไม่ได้!