Sự khác biệt chính giữa HTML 4 và HTML 5 là gì?


145

Sự khác biệt chính giữa bản nháp HTML4HTML5 là gì?

Vui lòng giữ các câu trả lời liên quan đến cú pháp đã thay đổi và các phần tử html được thêm / xóa.

Câu trả lời:


197

HTML5 có một số mục tiêu phân biệt nó với HTML4.

Tính nhất quán trong việc xử lý tài liệu không đúng

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.

Các tính năng ứng dụng web tốt hơn

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ải thiện ngữ nghĩa phần tử

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><em>thực tế có nghĩa là một cái gì đó khác biệt, và thậm chí <b><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.


14
Vui lòng làm nổi bật các thẻ và câu bằng cách chỉnh sửa câu trả lời. (Đây chỉ là một gợi ý vì trong khi tôi đọc nó, nó làm tôi mệt mỏi.)
Mohammad Faisal

44

Từ Wikipedia :

  • Quy tắc phân tích cú pháp mới hướng đến phân tích cú pháp linh hoạt và khả năng tương thích
  • Các yếu tố mới - phần, video, tiến độ, điều hướng, mét, thời gian, sang một bên, vải
  • Thuộc tính đầu vào mới - ngày và giờ, email, url
  • Thuộc tính mới - ping, bộ ký tự, không đồng bộ
  • Thuộc tính toàn cầu (có thể được áp dụng cho mọi thành phần) - id, tabindex, lặp lại
  • Các yếu tố không dùng nữa - trung tâm, phông chữ, đình công

12

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.


11

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:

  • Một API để phát video và âm thanh có thể được sử dụng với các yếu tố video và âm thanh mới.
  • Một API cho phép các ứng dụng Web ngoại tuyến.
  • API cho phép ứng dụng Web tự đăng ký một số loại giao thức hoặc phương tiện truyền thông nhất định.
  • Một API chỉnh sửa kết hợp với một contenteditablethuộc tính toàn cầu mới .
  • API kéo và thả kết hợp với một draggablethuộc tính.
  • Một API hiển thị lịch sử và cho phép các trang thêm vào nó để tránh phá vỡ nút quay lại.

3

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/htmlloạ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.


1
Bạn dường như ngụ ý rằng XHTML 5 tồn tại, trong khi đây không phải là trường hợp. Đề xuất W3C mới nhất của XHTML là 1.1 và 2.0 đang trong giai đoạn dự thảo.
David Rivers

4
@David Rivers: Nó tồn tại. XHTML5 là tuần tự hóa XML của HTML5 .
Mathias Bynens

2
@David Rivers: Nhân tiện, XHTML 2 không còn trong giai đoạn dự thảo nữa. Nó đã bị ngừng sử dụng HTML5 .
Mathias Bynens

Cảm ơn. Tôi cũng mới phát hiện ra điều này và không thể tin được mình đã đi ra ngoài như thế nào. Đó là một năm khó khăn!
David Rivers


0

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.


Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.