Чтоэлемент в панели инструментов разработчика IE - PullRequest
3 голосов
/ 30 октября 2010

Заметил элемент <!> В IE6 и 7 (не тестировал 8) панели инструментов разработчика. Похоже, это элемент, созданный для хранения фонового изображения для одного из моих реальных элементов (фактический элемент теперь является дочерним элементом элемента <!> Согласно IE)

Кто-нибудь знает, что такое элемент <!> И почему IE создает его для хранения фонового изображения (у меня есть еще один практически идентичный элемент рядом с элементом, который теперь является дочерним элементом элемента <!>, И этот элемент не нужно / получает элемент <!> для фонового изображения)

Фактическая разметка (упрощенная)

<div id='d1'>I have a background image</div>
<div id='d2'>So do I</div>

Разметка как рендеринг в IE6 и 7

<!> <!-- now contains the background image for d1'-->
  div id='d1'>I no longer have a background image</div>
</!> <!-- or whatever the closing tag for <!> is -->
<div id='d2'>SI still have mine</div>

alt text

EDIT
Актуальный сайт можно найти здесь . Фактическая разметка довольно большая и сложная. (Проблема заключается в элементе #leftBar, обратите внимание, что его высота определяется javascript)

Это все CSS, которые описывают элемент, обернутый в <!>

position:absolute;
left:0px; 
z-index:15;

width:15em; /* on update change: #contentWrapper:padding-left, #rondleiding:left */
height:100%;

overflow:visible;
background: url("http://somewhere/img.png") repeat #a99c89;

Также на элементах страницы действительно есть манипуляции с javascript, но они не имеют отношения к фоновому изображению элемента #leftBar.

Согласно валидатору W3C, страница в значительной степени действительна (некоторые ошибки на изображениях имеют rel).

Кроме того, я буду добавлять вознаграждение, поскольку сейчас я прошу людей посмотреть реальный веб-сайт (что означает копаться в моем дерьме). (забудьте, что вопрос должен быть открыт через два дня )

Ответы [ 2 ]

1 голос
/ 31 октября 2010

Это вызвано ошибкой в ​​скрипте ie7 / ie8.js. Я еще не понял, как ... не очень весело отлаживать, так как эта библиотека - такой лабиринт извилистых функций. Вы действительно должны включить это? Если есть одно конкретное поведение, которое вы хотите исправить, может быть лучше просто рассмотреть это отдельно. Я никогда не доверял этим огромным сценариям, в которых пытались исправить все сразу.

Так что вместо этого я укажу, что вы, кажется, загружаете jQuery дважды (один раз из Google, один раз с вашего собственного сайта с неправильным типом MIME), и у вас есть эта проблема проверки (остальная часть документа кажется OK):

<![if gte IE 8]>
    ...
<![endif]>

К сожалению, MSDN все еще раздает этот недопустимый синтаксис условного комментария, поскольку легко получить условный комментарий с пониженным уровнем, который также действителен:

<!--[if gte IE 8]><!-->
    ...
<!--<![endif]-->
0 голосов
/ 30 октября 2010

Возможно ли, что настоящая (не упрощенная) разметка содержит синтаксическую ошибку?Я видел, что панель инструментов IE Dev совершенно сходит с ума по таким простым вещам, как пропущенный закрывающий " для атрибута.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...