Hướng dẫn Cách làm HTML5 làm việc trên các phiên bản IE cũ

PVS

Super Moderator
Thành viên BQT
Tham gia
28/02/2015
Bài viết
17,151
Được Like
12,746
Cách làm HTML5 làm việc trên các phiên bản IE cũ

HTML5 có lẽ là công nghệ đến muộn và mạnh mẽ nhất, nhưng một số trình duyệt vẫn chưa hỗ trợ những thẻ mới trong HTML5, sau đây chúng ta sẽ cùng tìm hiểu những giải pháp để giải quyết vấn đề này.

Từ phiên bản IE8 trở xuống không hỗ trợ các phần tử trong HTML5, cũng dễ hiểu bởi vì khi chúng ra đời thì HTML5 vẫn chưa phát triển.

Ta sẽ xem một ví dụ đơn giản là dùng thẻ time và định kiểu cho nó là in nghiêng.
Mã:
<html>
<head>
  <title> test HTML5 </title>
  <style type="text/css">
    time{font-style: italic;}
  </style>
</head>
<body>
  <time datetime="2012-04-06">Today</time>
</body>
</html>

Nếu xem trên trình duyệt IE chúng ta sẽ thấy chẳng có tác dụng gì cả.

fixHTML5.png

Để fix lỗi này chúng ta sẽ thêm một đoạn code Javacript tạo ra một phần tử có tên là time.
Mã:
<html>
<head>
  <title> test HTML5 </title>
  <style type="text/css">
    time{font-style: italic;}
  </style>
</head>
<body>
<script type="text/javascript">
  document.createElement("time");
</script>
  <time datetime="2012-04-06">Today</time>
</body>
</html>

Sau khi áp dụng xem dưới trình duyệt IE chúng ta có thể thấy lỗi đã được fix.

fixedHTML5.png

Một giải pháp khác.
Chúng ta sẽ tải file HTML5.js để fix lỗi trình duyệt.
Sau đó tạo liên kết tới file HTML5.js trong thẻ header với cú pháp loại trừ trình duyệt sau:
Mã:
<!--[if lte IE 8]>
  <script type="text/javascript" src="HTML5.js"></script>
<![endif]-->

Đoạn code trên nói rằng nếu là từ trình duyệt IE8 trở xuống thì sẽ thực hiện liên kết tới file HTML5.js, vì từ phiên bản IE9 đã hỗ trợ HTML5 nên chúng ta loại ra, nhưng có thể một ngày nào đó bạn sẽ gặp một thẻ nào đó mà IE9 không hỗ trợ thì bạn sẽ sử dụng thêm cách đầu tiên để fix.

Để fix lỗi thì trình duyệt của bạn phải có javascript nhưng một ngày đẹp trời nào đó có người hay cái gì đó vô tình tắt javascript trên trình duyệt của bạn thì sao? Các thẻ HTML5 của bạn sẽ mất hết hiệu lực nhưng chẳng có vấn gì nghiêm trọng khi nội dung của nó ta vẫn đọc được chỉ có điều các định kiểu CSS sẽ bị vô hiệu hóa.

Chúc các bạn thành công.


Nguồn: sothichweb.com​
 

Top Bottom