HTML so với XHTML
XHTML là phiên bản HTML dựa trên XML chặt chẽ hơn.
XHTML là gì?
- XHTML là viết tắt của E X tensible H yper Text ext M arkup L ngôn ngữ
- XHTML là phiên bản HTML dựa trên XML chặt chẽ hơn
- XHTML là HTML được định nghĩa là một ứng dụng XML
- XHTML được hỗ trợ bởi tất cả các trình duyệt chính
Tại sao lại là XHTML?
XML là ngôn ngữ đánh dấu trong đó tất cả tài liệu phải được đánh dấu chính xác (được "định dạng đúng").
XHTML được phát triển để làm cho HTML có khả năng mở rộng và linh hoạt hơn để hoạt động với các định dạng dữ liệu khác (chẳng hạn như XML). Ngoài ra, các trình duyệt bỏ qua các lỗi trong trang HTML và cố gắng hiển thị trang web ngay cả khi nó có một số lỗi về đánh dấu. Vì vậy XHTML có cách xử lý lỗi chặt chẽ hơn nhiều.
Nếu bạn muốn nghiên cứu XML, vui lòng đọc Hướng dẫn XML của chúng tôi.
Sự khác biệt quan trọng nhất so với HTML
- <!DOCTYPE> là bắt buộc
- Thuộc tính xmlns trong <html> là bắt buộc
- <html>, <head>, <title> và <body> là bắt buộc
- Các phần tử phải luôn được lồng đúng cách
- Các phần tử phải luôn đóng
- Các phần tử phải luôn ở dạng chữ thường
- Tên thuộc tính phải luôn ở dạng chữ thường
- Giá trị thuộc tính phải luôn được trích dẫn
- Giảm thiểu thuộc tính bị cấm
XHTML - <!DOCTYPE ....> Là bắt buộc
Tài liệu XHTML phải có khai báo XHTML <!DOCTYPE>.
Các phần tử <html>, <head>, <title> và <body> cũng phải có mặt và thuộc tính xmlns trong <html> phải chỉ định vùng tên xml cho tài liệu.
Ví dụ
Đây là tài liệu XHTML có tối thiểu các thẻ bắt buộc:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"https://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="https://www.w3.org/1999/xhtml">
<head>
<title>Title of document</title>
</head>
<body>
some content here...
</body>
</html>
Các phần tử XHTML phải được lồng đúng cách
Trong XHTML, các phần tử phải luôn được lồng vào nhau một cách chính xác, như thế này:
Chính xác:
<b><i>Some
text</i></b>
Sai:
<b><i>Some
text</b></i>
Các phần tử XHTML phải luôn được đóng
Trong XHTML, các phần tử phải luôn được đóng, như thế này:
Chính xác:
<p>This is a paragraph</p>
<p>This is another paragraph</p>
Sai:
<p>This is a paragraph
<p>This is another paragraph
Các phần tử trống XHTML phải luôn được đóng
Trong XHTML, các phần tử trống phải luôn được đóng, như thế này:
Chính xác:
A break: <br />
A horizontal rule: <hr />
An image: <img src="happy.gif" alt="Happy face" />
Sai:
A break: <br>
A horizontal rule: <hr>
An image: <img src="happy.gif" alt="Happy face">
Các phần tử XHTML phải ở dạng chữ thường
Trong XHTML, tên thành phần phải luôn ở dạng chữ thường, như sau:
Chính xác:
<body>
<p>This is a paragraph</p>
</body>
Sai:
<BODY>
<P>This is a paragraph</P>
</BODY>
Tên thuộc tính XHTML phải ở dạng chữ thường
Trong XHTML, tên thuộc tính phải luôn ở dạng chữ thường, như sau:
Chính xác:
<a href="https://www.example.com.vn/html/">Visit our HTML tutorial</a>
Sai:
<a HREF="https://www.example.com.vn/html/">Visit our HTML tutorial</a>
Giá trị thuộc tính XHTML phải được trích dẫn
Trong XHTML, các giá trị thuộc tính phải luôn được trích dẫn, như thế này:
Chính xác:
<a href="https://www.example.com.vn/html/">Visit our HTML tutorial</a>
Sai:
<a href=https://www.example.com.vn/html/>Visit our HTML tutorial</a>
Tối thiểu hóa thuộc tính XHTML bị cấm
Trong XHTML, việc giảm thiểu thuộc tính bị cấm:
Chính xác:
<input type="checkbox" name="vehicle" value="car" checked="checked" />
<input type="text" name="lastname" disabled="disabled" />
Sai:
<input type="checkbox" name="vehicle" value="car" checked />
<input type="text" name="lastname" disabled />