Hãy xem xét điều này:
Khi phục vụ dưới dạng văn bản / html, tất cả những gì bạn cần là một loại tài liệu là kích hoạt chế độ tiêu chuẩn. Ngoài ra, doctype không liên quan gì đến trình duyệt.
Khi phục vụ dưới dạng văn bản / html, cho dù bạn sử dụng đánh dấu XHTML hay đánh dấu HTML, nó được các trình duyệt coi là HTML.
Vì vậy, thực sự bắt nguồn từ việc sử dụng loại tài liệu ngắn nhất kích hoạt chế độ tiêu chuẩn (<! DOCTYPE html>) và sử dụng đánh dấu HTML tạo ra kết quả chính xác trong trình duyệt.
Phần còn lại là về sự phù hợp, xác nhận và đánh dấu ưu tiên.
Như đã nói, sử dụng <! DOCTYPE html> ngay bây giờ và cố gắng làm cho đánh dấu của bạn phù hợp với HTML5 không phải là ý tưởng tồi miễn là bạn vẫn sử dụng các tính năng ổn định hoạt động trong trình duyệt. Bạn sẽ không sử dụng bất cứ thứ gì trong HTML4 hoặc XHTML 1.x không hoạt động trong trình duyệt, phải không?
Nói cách khác, bạn sử dụng <! DOCTYPE html> với đánh dấu giống như HTML4 trong khi tôn vinh những thứ đã được làm rõ trong HTML5. HTML5 là về khả năng tương thích trình duyệt.
Nhược điểm của việc sử dụng HTML5 bây giờ là thông số kỹ thuật có thể thay đổi khá thường xuyên. Điều này làm cho nó quan trọng để bạn theo kịp thông số kỹ thuật khi nó chủ động thay đổi. Ngoài ra http://validator.nu/ có thể không phải lúc nào cũng được cập nhật, nhưng http://validator.w3.org/ cũng không phải lúc nào cũng cập nhật, vì vậy đừng để điều đó ngăn cản bạn.
Tất nhiên, nếu bạn muốn sử dụng đánh dấu XHTML 1.0 và tuân thủ XHTML 1.0, thì bạn không nên sử dụng <! DOCTYPE html>.
Cá nhân tôi luôn sử dụng <! DOCTYPE html> cho HTML.