Một trong những lý do chính khiến các nhà phát triển có thể chưa chuyển sang HTML5 là do nhận thấy sự thiếu hỗ trợ cho các trình duyệt cũ. Điều này thực sự không đúng sự thật và mặc dù có thể có một số yêu cầu phức tạp cần thiết để có khả năng tương thích ngược phù hợp, nhưng vẫn có thể xảy ra.
Tất nhiên, với các trình duyệt cũ, tôi muốn nói đến Internet Explorer, vì tất cả các trình phát lớn khác đều cập nhật thường xuyên và người dùng của họ có xu hướng làm theo: các trình duyệt như Firefox, Safari và Opera đã hỗ trợ HTML5 trong một thời gian. Một số nhà phát triển có thể quyết định ngừng hỗ trợ IE6, nhưng đối với một số người thì đó không phải là một tùy chọn và ở bất kỳ mức độ nào, cả IE7 và IE8 đều không hỗ trợ HTML5. IE9 nhưng nó chỉ chạy trên Windows Vista và Windows 7, vì vậy các phiên bản khác sẽ còn tồn tại trong một thời gian dài sắp tới, như chúng ta đã thấy với IE6.
Vậy cần phải làm gì để HTML5 hoạt động trong Internet Explorer?
bạn có thể thay đổi tên người dùng lol của mình không
Các phần tử không xác định
Trước hết, IE sẽ không hiển thị bất kỳ phần tử nào mà nó không nhận ra, vì vậy nó sẽ hoàn toàn bỏ qua các phần tử cấu trúc HTML5 như header
, footer
, article
, section
, và nav
, tất cả các phần chính của trang web HTML5. Điều này có thể được khắc phục bằng cách nói với IE về các phần tử này bằng JavaScript. Cách tốt nhất để làm điều này là bao gồm HTML5 shiv script, được tạo bởi Remy Sharp. Tập lệnh tiện dụng này tạo ra tất cả các phần tử HTML5 có liên quan mà IE bây giờ sẽ biết khi hiển thị trang.
Một vấn đề với điều này là nó sẽ không hoạt động đối với những người dùng đã tắt JavaScript. Thật không may, không có cách nào để giải quyết vấn đề này, vì vậy nhà phát triển phải đưa ra quyết định sử dụng HTML5 hoặc ở lại với HTML 4.01.
Tạo kiểu
Hầu hết các trình duyệt đều có bảng định kiểu nội bộ, trong số những thứ khác, áp dụng display:block
để chặn các phần tử mức. Trong khi một số trình duyệt mới hơn hiện làm điều này cho các phần tử HTML5 có liên quan, một số thì không và điều này cần được thêm vào cho tất cả các trình duyệt. Chỉ cần thêm kiểu sau sẽ thực hiện thủ thuật:
article, aside, figure, footer, header, hgroup,
menu, nav, section { display:block; }
Các phần tử hình thức
Và bản thân một số yếu tố mới thì sao, chẳng hạn như các loại đầu vào mới - làm thế nào để những thứ này hiển thị trên các trình duyệt cũ?
Thực sự tốt. Vì thông số kỹ thuật HTML5 đã được mở rộng trong một cách tương thích ngược , bất kỳ loại đầu vào nào không được nhận dạng, chỉ được coi là text
và sẽ đơn giản được hiển thị như vậy.
vô hiệu hóa cửa sổ màn hình khóa kỷ niệm 10 năm
Đa phương tiện
Như tôi đã thảo luận trước đây, video và các phần tử âm thanh được thiết kế để cho phép Flash quay trở lại, sẽ hoạt động tốt trên Internet Explorer.
Việc chuyển sang HTML5 sẽ vẫn diễn ra từ từ và một số người sẽ không thấy cũng như không có nhu cầu sử dụng bất kỳ chức năng mới nào mà nó cung cấp, nhưng khi thực hiện, chúng có thể (tương đối) an toàn khi biết rằng các trình duyệt cũ hơn sẽ hiển thị các trang web của họ tốt.