Это то, что w3c валидатор возвращает, когда я передаю опубликованный вами фрагмент:
Строка 15, столбец 46: тип документа не допускает использование элемента «DIV»; отсутствует один из тегов "OBJECT", "MAP", "BUTTON"
<div class="ph-item-featured-img">
Упомянутый элемент не может появляться в контексте, в котором вы его поместили; другие упомянутые элементы являются единственными, которые разрешены там и могут содержать упомянутый элемент. Это может означать, что вам нужен содержащий элемент, или, возможно, вы забыли закрыть предыдущий элемент.
Одной из возможных причин этого сообщения является попытка поместить элемент уровня блока (например, "<p>
" или "<table>
") внутри встроенного элемента (например, "<a>
", "<span>
). ", или" <font>
").
Если я правильно помню, IE6 требует, чтобы каждый элемент внутри тега <a>
был элементом с установленным на нем CSS display: inline
(или встроенными элементами по умолчанию, такими как <span>
, <b>
, <strong>
и т. Д.), Иначе ссылки не будут связаны, или ссылки будут странными.
Возможно, виноват даже HTML-парсер IE6. Возможно, он видит <img src="#">
и думает: «Это недопустимый URL-адрес изображения!: Ignore:». IE6 странно в этом смысле, часто действует диаметрально противоположно тому, как работают совместимые со стандартами браузеры.
Правда в том, что у меня нет возможности проверить все это; К счастью, на каждом компьютере с Windows, к которому у меня есть доступ, есть IE7 +. Возможно, вам следует взять маршрут Google и прямо сказать, что вы не собираетесь поддерживать IE6, перенаправив все браузеры IE6 в место, где они могут обновиться.
Я полагаю, что вы можете сделать это с условными комментариями примерно так:
<html>
<head>
<!--[if lte IE 6]>
<meta http-equiv="refresh"
content="2;url=http://www.microsoft.com/windows/internet-explorer/default.aspx" />
<![endif]-->
...
</head>