XHTML có hỗ trợ JavaScript không?
Nhận toàn quyền truy cập vào HTML & XHTML. The Definitive Guide, 5th Edition và hơn 60 nghìn đầu sách khác, với 10 ngày dùng thử miễn phí O'Reilly Show Ngoài ra còn có các sự kiện trực tuyến trực tiếp, nội dung tương tác, tài liệu chuẩn bị chứng nhận, v.v. Tài liệu Flask và các ứng dụng ví dụ đang sử dụng HTML5. Bạn có thể nhận thấy rằng trong nhiều trường hợp, khi các thẻ kết thúc là tùy chọn, chúng không được sử dụng, để HTML sạch hơn và tải nhanh hơn. Do có nhiều nhầm lẫn về HTML và XHTML giữa các nhà phát triển nên tài liệu này cố gắng trả lời một số câu hỏi chính Lịch sử của XHTML¶Trong một thời gian, có vẻ như HTML sắp bị thay thế bởi XHTML. Tuy nhiên, hầu như không có trang web nào trên Internet là XHTML thực (là HTML được xử lý bằng các quy tắc XML). Có một vài lý do chính tại sao đây là trường hợp. Một trong số đó là Internet Explorer thiếu hỗ trợ XHTML phù hợp. Thông số XHTML nói rằng XHTML phải được cung cấp với loại MIME ứng dụng/xhtml+xml, nhưng Internet Explorer từ chối đọc các tệp có loại MIME đó. Mặc dù việc cấu hình các máy chủ Web để phục vụ XHTML đúng cách là tương đối dễ dàng, nhưng ít người thực hiện được. Điều này có thể là do việc sử dụng XHTML đúng cách có thể khá khó khăn Một trong những nguyên nhân quan trọng nhất gây khó khăn là việc xử lý lỗi hà khắc (nghiêm khắc và tàn nhẫn) của XML. Khi gặp lỗi phân tích cú pháp XML, trình duyệt phải hiển thị cho người dùng một thông báo lỗi xấu, thay vì cố gắng khắc phục lỗi và hiển thị những gì có thể. Hầu hết việc tạo (X)HTML trên web đều dựa trên các công cụ mẫu không phải XML (chẳng hạn như Jinja, công cụ được sử dụng trong Flask) không bảo vệ bạn khỏi việc vô tình tạo XHTML không hợp lệ. Có các công cụ mẫu dựa trên XML, chẳng hạn như Kid và Genshi phổ biến, nhưng chúng thường đi kèm với chi phí thời gian chạy lớn hơn và không dễ sử dụng vì chúng phải tuân theo các quy tắc XML Tuy nhiên, phần lớn người dùng cho rằng họ đang sử dụng XHTML đúng cách. Họ đã viết một loại tài liệu XHTML ở đầu tài liệu và tự đóng tất cả các thẻ cần thiết ( XHTML cũng thay đổi cách JavaScript được sử dụng. Để làm việc đúng cách với XHTML, các lập trình viên phải sử dụng giao diện DOM được đặt tên với không gian tên XHTML để truy vấn các phần tử HTML Lịch sử của HTML5¶Việc phát triển đặc tả HTML5 được bắt đầu vào năm 2004 với tên gọi “Ứng dụng Web 1. 0” của Nhóm làm việc về công nghệ ứng dụng siêu văn bản Web, hoặc WHATWG (được thành lập bởi các nhà cung cấp trình duyệt lớn Apple, Mozilla và Opera) với mục tiêu viết một đặc tả HTML mới và cải tiến, dựa trên hành vi trình duyệt hiện có thay vì không thực tế và Ví dụ: trong HTML4, về mặt lý thuyết, Vào năm 2007, đặc tả này đã được thông qua làm cơ sở cho một đặc tả HTML mới dưới sự bảo trợ của W3C, được gọi là HTML5. Hiện tại, có vẻ như XHTML đang mất dần sức hút vì nhóm làm việc XHTML 2 đã bị giải tán và HTML5 đang được triển khai bởi tất cả các nhà cung cấp trình duyệt lớn HTML so với XHTML¶Bảng sau đây cung cấp cho bạn tổng quan nhanh về các tính năng có sẵn trong HTML 4. 01, XHTML 1. 1 và HTML5. (XHTML 1. 0 không được bao gồm, vì nó đã được thay thế bởi XHTML 1. 1 và XHTML5 ít được sử dụng. ) HTML4. 01 XHTML1. 1 HTML5
nên được phục vụ dưới dạng văn bản/html 3nên được phục vụ dưới dạng ứng dụng/xhtml+xml xử lý lỗi nghiêm ngặt SVG nội tuyến MathML nội tuyến thẻ thẻ Các thẻ ngữ nghĩa mới như Đây là một tính năng tối nghĩa được kế thừa từ SGML. Nó thường không được hỗ trợ bởi các trình duyệt, vì những lý do chi tiết ở trên 2Điều này là để tương thích với mã máy chủ tạo XHTML cho các thẻ như XHTML 1. 0 là tiêu chuẩn XHTML cuối cùng cho phép được phân phát dưới dạng văn bản/html vì lý do tương thích ngược “Nghiêm ngặt” nghĩa là gì?¶HTML5 đã xác định nghiêm ngặt các quy tắc phân tích cú pháp, nhưng nó cũng chỉ định chính xác cách trình duyệt sẽ phản ứng với các lỗi phân tích cú pháp - không giống như XHTML, vốn chỉ đơn giản tuyên bố rằng nên hủy bỏ phân tích cú pháp. Một số người bối rối bởi cú pháp rõ ràng không hợp lệ mà vẫn tạo ra kết quả như mong đợi (ví dụ: thiếu thẻ kết thúc hoặc giá trị thuộc tính không được trích dẫn) Một số trong số này hoạt động do xử lý lỗi dễ dàng mà hầu hết các trình duyệt sử dụng khi chúng gặp lỗi đánh dấu, một số khác thực sự được chỉ định. Các cấu trúc sau đây là tùy chọn trong HTML5 theo tiêu chuẩn, nhưng phải được trình duyệt hỗ trợ
Điều này có nghĩa là trang sau trong HTML5 hoàn toàn hợp lệ <title>Hello HTML5title> <div class=header> <h1>Hello HTML5h1> <p class=tagline>HTML5 is awesome div> <ul class=nav> <li><a href=/index>Indexa> <li><a href=/downloads>Downloadsa> <li><a href=/about>Abouta> ul> <div class=body> <h2>HTML5 is probably the futureh2> <p> There might be some other things around but in terms of browser vendor support, HTML5 is hard to beat. <dl> <dt>Key 1 <dd>Value 1 <dt>Key 2 <dd>Value 2 dl> div> Các công nghệ mới trong HTML5¶HTML5 bổ sung nhiều tính năng mới giúp các ứng dụng Web dễ viết và sử dụng hơn
Nhiều tính năng khác cũng đã được thêm vào. Hướng dẫn tốt về các tính năng mới trong HTML5 là cuốn sách sắp xuất bản của Mark Pilgrim, Dive Into HTML5. Tuy nhiên, không phải tất cả chúng đều được hỗ trợ trong các trình duyệt, vì vậy hãy thận trọng Nên dùng cái gì?¶Hiện tại, câu trả lời là HTML5. Có rất ít lý do để sử dụng XHTML khi xem xét những phát triển mới nhất trong trình duyệt Web. Tóm tắt các lý do nêu trên
|