Я работал с IE6 много лет [рыдание], но никогда не видел этой конкретной ошибки прежде, и я, может казаться, не нахожу ссылку на него в сети. Проблема, кажется, с тем, как IE6 анализирует HTML вложенного списка. Даже при том, что разметка корректна, IE6 так или иначе munges код, когда это анализируется и отбрасывает закрывающие тэги части из <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.
Большое спасибо за любой совет.
В режиме чистого HTML (неXHTML) не требуется. То же самое относится к
Вот выдержка из W3C spec об элементе :
Начальный тег: обязательный, Конечный тег: необязательный
Обратите внимание на последнюю строку.
Проблемы с визуальным отображением, о которых вы говорите, чаще всего связаны с hasLayout ошибками.