Почему этот фантомный пустой тег отображается в инструментах разработчика IE? - PullRequest
0 голосов
/ 14 октября 2011

Во вкладке HTML инструментов разработчика IE отображается фантомный пустой тег (<>).

Вот фрагмент фактического исходного кода HTML с удалением нескольких несущественных частей:

<td><img src="1.jpg"></td>
<!--start mo script-->
<div id="mo">
<script type="text/javascript" src="mo.js"></script>
</div>
<script type="text/javascript">
setTimeout('timeOutMO()', 5000);
function timeOutMO() { 
   document.getElementById("mo").innerHTML = "";
}
</script>
<!--end mo script-->
<td><img src="2.jpg"></td>

Как в Firefox, так и в отладчике Chrome, узлы отображаются, как и ожидалось, с узлами <td>, <div>, <script> и <td> в качестве родственных элементов.

Но в IEотладчик, я получаю фантомный пустой узел, который все портит.Выглядит это так:

<td>
   <img src="1.jpg">
</td>
<!--start mo script-->
<>
   <div id="mo">
      <script type="text/javascript" src="mo.js"></script>
   </div>
   <script type="text/javascript">...</script>
   <!--end mo script-->
</>
<td>
   <img src="2.jpg">
</td>

IE в основном рассматривает div и script внутри пустого тега не как братьев и сестер тегов td, а как племянников и племянниц.

Кто-нибудь знает почему?

1 Ответ

3 голосов
/ 14 октября 2011

То, что вы делаете, нарушает стандарт HTML. Каждый браузер по-разному обрабатывает странные случаи, подобные этим. Почему бы не обернуть его в тд?

...