Câu trả lời:
HTML5 có một số mục tiêu phân biệt nó với HTML4.
Cái chính là nhất quán, xác định xử lý lỗi . Như bạn đã biết, HTML cố tình hỗ trợ 'canh thẻ' hoặc khả năng viết mã không đúng định dạng và sửa nó thành một tài liệu hợp lệ. Vấn đề là các quy tắc để làm điều này không được viết ra ở bất cứ đâu. Khi một nhà cung cấp trình duyệt mới muốn tham gia vào thị trường, họ chỉ cần kiểm tra các tài liệu không đúng định dạng trong các trình duyệt khác nhau (đặc biệt là IE) và thiết kế ngược xử lý lỗi của họ. Nếu không, thì nhiều trang sẽ không hiển thị chính xác (ước tính chiếm khoảng 90% số trang trên mạng ít nhất là không đúng định dạng).
Vì vậy, HTML5 đang cố gắng khám phá và mã hóa việc xử lý lỗi này, để tất cả các nhà phát triển trình duyệt có thể chuẩn hóa và giảm đáng kể thời gian và tiền bạc để hiển thị mọi thứ một cách nhất quán. Đồng thời, trong tương lai sau khi HTML biến thành định dạng tài liệu, các nhà sử học vẫn có thể muốn đọc tài liệu của chúng tôi và có một thuật toán phân tích cú pháp được xác định hoàn toàn sẽ hỗ trợ rất nhiều cho việc này.
Mục tiêu phụ của HTML5 là phát triển khả năng trình duyệt trở thành một nền tảng ứng dụng, thông qua HTML, CSS và Javascript. Nhiều yếu tố đã được thêm trực tiếp vào các ngôn ngữ hiện đang (trong HTML4) Flash hoặc hacks JS-based, chẳng hạn như <canvas>
, <video>
, và <audio>
. Những thứ hữu ích như Bộ nhớ cục bộ (cơ sở dữ liệu khóa giá trị tích hợp có thể truy cập js, để lưu trữ thông tin ngoài những gì cookie có thể giữ), các loại đầu vào mới như ngày mà trình duyệt có thể hiển thị giao diện người dùng dễ dàng (để chúng tôi không phải sử dụng các công cụ chọn ngày theo lịch dựa trên js của chúng tôi) và xác thực mẫu được trình duyệt hỗ trợ sẽ giúp việc phát triển các ứng dụng web đơn giản hơn nhiều cho các nhà phát triển và giúp chúng nhanh hơn nhiều cho người dùng (vì nhiều thứ sẽ được hỗ trợ nguyên bản, thay vì hack trong javascript).
Có nhiều nỗ lực nhỏ hơn khác diễn ra trong HTML5, chẳng hạn như vai trò ngữ nghĩa được xác định rõ hơn cho các yếu tố hiện có ( <strong>
và <em>
thực tế có nghĩa là một cái gì đó khác biệt, và thậm chí <b>
và <i>
có ngữ nghĩa mơ hồ sẽ hoạt động tốt khi phân tích tài liệu kế thừa) và thêm các yếu tố mới hữu ích ngữ nghĩa - <article>
, <section>
, <header>
, <aside>
, và <nav>
nên thay thế hầu hết các <div>
s được sử dụng trên một trang web, làm cho trang web của bạn một chút ngữ nghĩa hơn, nhưng quan trọng hơn, dễ dàng hơn để đọc . Không còn phải đau đớn khi xem những gì ngẫu nhiên </div>
đang đóng - thay vào đó bạn sẽ thấy rõ </header>
, hoặc </article>
, làm cho cấu trúc tài liệu của bạn trực quan hơn nhiều.
Từ Wikipedia :
Bạn sẽ muốn kiểm tra sự khác biệt của HTML5 từ HTML4: Nhóm làm việc W3C Lưu ý ngày 9 tháng 12 năm 2014 để biết sự khác biệt hoàn toàn. Có nhiều yếu tố mới và thuộc tính yếu tố. Một số yếu tố đã bị xóa và những yếu tố khác có giá trị ngữ nghĩa khác với trước đây.
Ngoài ra còn có các API được xác định, chẳng hạn như việc sử dụng canvas, để giúp xây dựng thế hệ ứng dụng web tiếp theo và đảm bảo việc triển khai được chuẩn hóa.
HTML5 giới thiệu một số API giúp tạo các ứng dụng Web. Chúng có thể được sử dụng cùng với các yếu tố mới được giới thiệu cho các ứng dụng:
contenteditable
thuộc tính toàn cầu mới .draggable
thuộc tính.Bạn có thể quan tâm đến danh sách các yếu tố và thuộc tính HTML5 này .
Ngoài ra, xin lưu ý rằng đó là "HTML 4", không phải "HTML4". Thật vậy, đối với HTML 5, cả hai biến thể đều được sử dụng, nhưng có một sự khác biệt quan trọng về ý nghĩa. HTML 5 đề cập đến tên của đặc tả W3C, trong khi "HTML5" là loại tài liệu của các tệp HTML có text/html
loại MIME tuân theo thông số kỹ thuật này. Điều tương tự cũng xảy ra với XHTML 5 so với XHTML5.
Bây giờ W3c cung cấp một sự khác biệt chính thức trên trang web của họ:
HTML 5 mời bạn cung cấp thêm rất nhiều giá trị ngữ nghĩa cho mã của bạn. Hơn nữa, có giải pháp bản địa để nhúng nội dung đa phương tiện.
Phần còn lại rất quan trọng, nhưng đó là loại đường kỹ thuật nhiều hơn sẽ giúp bạn không phải làm những thứ tương tự với ngôn ngữ lập trình máy khách.
Nói tóm lại, nó đơn giản hơn nhiều so với html, doctype dài bị loại bỏ và thẻ trung tâm và phông chữ cũng bị xóa. Tôi cũng đã trả lời sự khác biệt này trong blog của mình: http://ravisinghblog.in/key-difference-b between-html-and-html-5 /