В IE 8/9 - нельзя щелкнуть изображение, внутри якоря, который обернут с помощью span, используя display: block - PullRequest
1 голос
/ 03 октября 2011

У меня возникла небольшая проблема при создании элемента навигации - он нормально работает в Firefox, но, похоже, вызывает головную боль в IE8 / IE9. Другая странность в том, что в IE он работает нормально при работе под localhost, но не при запуске на сервере.

Я пытался сузить реальную проблему, и, кажется, это вызвано тем, что я обернул пару элементов (img и некоторый текст) в промежуток, который имеет display: block. Когда я делаю это, изображение больше не реагирует на JavaScript-код тега привязки. Это сложно объяснить, поэтому я привел сокращенный пример:

<a title="My Link" href='javascript:alert(1);' style="display: block; height: 37px; text-decoration: none;">
    <span style="display: block; height: 34px;">
        <img title="My Icon" src="mypic.png" alt="ss" />
        <span>Link Text</span>
    </span>
</a>

Любая помощь будет отличной!

Мэтт

1 Ответ

2 голосов
/ 03 октября 2011

Другая странная вещь заключается в том, что он хорошо работает в IE при работе под локальным хостом, но не при запуске на сервере.

В этом случае проблема связана срежим рендеринга, который использует IE.Нажмите F12, чтобы открыть Инструменты разработчика, чтобы увидеть, какой режим используется.

Добавление этого к вашему <head> должно решить проблему:

<meta http-equiv="X-UA-Compatible" content="IE=edge">
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...