Thẻ base
thực sự chỉ được vinh danh bởi các liên kết tương đối bên trong tài liệu HTML chính nó. Tuy nhiên, có một lỗi cụ thể của IE6 mà bạn thực sự cần phải tính đến khi sử dụng thẻ <base>
trong HTML (không phải trong XHTML). Thẻ <base>
được trong HTML ghi nhận như không có một thẻ kết thúc </base>
, nhưng IE6 sai giả định nó cho đúng mà sẽ gây ra rằng toàn bộ nội dung sau thẻ <base>
được đặt như con của <base>
thẻ trong cây HTML DOM của nó . Điều này có thể gây ra ngay từ những vấn đề không thể giải thích đầu tiên trong Javascript/jQuery/CSS, tức là các yếu tố không thể truy cập được hoàn toàn trong các lựa chọn cụ thể (ví dụ: html>body
) cho đến khi bạn phát hiện ra có một số base
ở giữa.
Một bình thường sửa chữa IE6 đang sử dụng bình luận có điều kiện để bao gồm các thẻ kết thúc:
<base href="http://example.com/"><!--[if lte IE 6]></base><![endif]-->
kỹ lưỡng và concise.Thanks. –