Doctype HTML
Khai báo được sử dụng để thông báo cho trình duyệt của khách truy cập trang web rằng tài liệu được hiển thị là tài liệu HTML. Mặc dù bản thân nó không phải là một phần tử HTML, nhưng mọi tài liệu HTML phải được khai báo bằng DOCTYPE để tuân thủ các tiêu chuẩn HTML. Để tìm hiểu rõ hơn về Doctype HTML, mời bạn đọc cùng eLib tham khảo bài viết dưới đây.
Mục lục nội dung
1. Doctype trong HTML
Trong các tài liệu HTML bạn đã từng thấy rằng có một khai báo <!DOCTYPE html> declaration trước thẻ <html>. Khai báo <!DOCTYPE html> không phải là một thẻ HTML. Nó được sử dụng để chỉ dẫn cho trình duyệt web về trang HTML.
Thực tế có rất nhiều kiểu của HTML như HTML 4.01 Strict, HTML 4.01 Transitional, HTML 4.01 Frameset, XHTML 1.0 Strict, XHTML 1.0 Transitional, XHTML 1.0 Frameset, XHTML 1.1 etc.
Việc khai báo <!DOCTYPE> để tham chiếu đến Document Type Declaration (DTD) trong HTML 4.01; bởi vì HTML 4.01 dựa trên SGML. Nhưng HTML 5 không dựa trên ngôn ngữ SGML.
Khai báo doctype để tham chiếu đến các version khác nhau của HTML. HTML 5 thì khai báo như sau:
<!DOCTYPE html>
Ví dụ về tài liệu HTML sử dụng khai báo doctype
<!DOCTYPE html>
<html>
<head>
<title>This is the title</title>
</head>
<body>
This is the content of the document.
</body>
</html>
Chú ý: Khi viết HTML bạn nên khai báo doctype để trình duyệt web nhận ra được kiểu tài liệu của bạn và hiển thị chúng ra đúng như mong đợi.
2. Các loại khai báo DOCTYPE
2.1 HTML DOCTYPE
HTML 4 DOCTYPE:
HTML 4 gồm có các phiên bản HTML 4.0, HTML 4.01 Strict, HTML 4.01 Transition, HTML 4.01 Frameset) và mặc dù ít được sử dụng tuy nhiên đôi khi bạn vẫn thấy chúng tồn tại ở một số website. Cú pháp <DOCTYPE> của HTML 4 hơi phức tạp hơn so với HTML5.
Trong HTML 4.01, khai báo <! DOCTYPE> đề cập đến một DTD, vì HTML 4.01 được dựa trên SGML. DTD chỉ định các quy tắc cho ngôn ngữ đánh dấu, để các trình duyệt hiển thị nội dung chính xác.
HTML 4.01 Strict:
Với phiên bản HTML 4.01 Strict khai báo <DOCTYPE> như sau:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
HTML 4.01 Transition:
Với phiên bản HTML 4.01 Transition khai báo <DOCTYPE> như sau:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
HTML 4.01 Frameset:
Với phiên bản HTML 4.01 Frameset khai báo <DOCTYPE> như sau:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd">
2.2 XHTML DOCTYPE
XHTML 1.1:
Khai báo <DOCTYPE> của XHTML 1.1 có dạng như sau:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
XHTML 1.0 Strict:
Khai báo <DOCTYPE> của XHTML 1.0 Strict có dạng như sau:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
XHTML 1.0 Transitional:
Khai báo <DOCTYPE> của XHTML 1.0 Transition có dạng như sau:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
XHTML 1.0 Frameset:
Khai báo <DOCTYPE> của XHTML 1.0 Frameset có dạng như sau:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
3. Khác nhau giữa HTML và XHTML là gì?
Cấu trúc tài liệu:
- DOCTPE XHTML 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 yếu tố XHTML:
- Các phần tử XHTML phải được lồng đúng cách
- Các phần tử XHTML phải luôn được đóng
- Các phần tử XHTML phải được viết thường
- Tài liệu XHTML phải có một phần tử gốc
Thuộc tính XHTML
- Tên thuộc tính phải viết thường
- Giá trị thuộc tính phải được trích dẫn
- Giảm thiểu thuộc tính bị cấm
4. Cách chuyển đổi từ HTML sang XHTML
Để chuyển đổi từ HTML sang XHTML cần làm như sau:
- Thêm một XHTML <! DOCTYPE> vào dòng đầu tiên của mỗi trang
- Thêm một thuộc tính xmlns cho phần tử html của mỗi trang
- Thay đổi tất cả các tên thành phần chữ thường
- Đóng tất cả các yếu tố trống
- Thay đổi tất cả tên thuộc tính thành chữ thường
- Trích dẫn tất cả các giá trị thuộc tính
Trên đây là bài viết của eLib.VN về Doctype HTML. Hy vọng bài viết hữu ích cho bạn đọc.
Tham khảo thêm
- doc Thẻ Marquee trong HTML
- doc Thẻ Textarea trong HTML
- doc Thẻ title trong HTML
- doc Thẻ meta trong HTML
- doc Thẻ Div trong HTML
- doc Thẻ pre trong HTML
- doc Thẻ code trong HTML
- doc Thẻ Label trong HTML
- doc Thẻ Input trong HTML
- doc Thẻ Button trong HTML
- doc Thẻ HR trong HTML
- doc Thẻ BR trong HTML
- doc Thẻ Script trong HTML
- doc Thẻ NoScript trong HTML
- doc Thẻ b trong HTML
- doc Thẻ Quotes trong HTML