Я много лет работал с IE6 [всхлип], но никогда раньше не сталкивался с этой конкретной ошибкой, и я не могу найти ссылку на нее в Интернете. Кажется, проблема в том, как IE6 анализирует HTML вложенного списка. Хотя разметка верна, IE6 каким-то образом обрабатывает код при его анализе и удаляет закрывающие теги некоторых элементов <li>
.
Например, возьмите следующий код:
<!DOCTYPE html>
<html>
<head>
<title>My Page</title>
</head>
<body>
<div>
<ul>
<li><a href=''>Child A</a>
<div>
<ul>
<li><a href=''>Grandchild A</a></li>
</ul>
</div>
</li>
<li><a href=''>The Child B Which Is Not A</a>
<div>
<ul>
<li><a href=''>Grandchild B</a></li>
<li><a href=''>Grandchild C</a></li>
</ul>
</div>
</li>
<li><a href=''>Deep Purple</a></li>
<li><a href=''>Led Zeppelin</a></li>
</ul>
</div>
</body>
</html>
Теперь посмотрим, как IE6 отображает этот код после того, как он запустил его через механизм визуализации IE6:
<HTML>
<HEAD>
<TITLE>My Page</TITLE></HEAD>
<BODY>
<DIV>
<UL>
<LI><A href="">Child A</A>
<DIV>
<UL>
<LI><A href="">Grandchild A</A> </LI>
</UL>
</DIV>
<LI><A href="">The Child B Which Is Not A</A>
<DIV>
<UL>
<LI><A href="">Grandchild B</A>
<LI><A href="">Grandchild C</A> </LI>
</UL>
</DIV>
<LI><A href="">Deep Purple</A>
<LI><A href="">Led Zeppelin</A> </LI>
</UL>
</DIV>
</BODY>
</HTML>
Обратите внимание, что в некоторых элементах <li>
больше нет закрывающих тегов, даже если они присутствовали в исходном HTML.
Кто-нибудь знает, что может вызвать эту ошибку и можно ли ее избежать? Похоже, это является источником некоторых проблем с визуальным отображением в IE6.
Большое спасибо за любой совет.