: hover не работает должным образом в IE9

У меня есть простое выпадающее меню CSS с iframe внутри. Когда я наводю указатель мыши на выпадающее меню, меню выпадает. Но когда моя мышь наводит iframe внутри меню, меню возвращается. Вот упрощенная версия моего кода:

<div id="comments">
  <a href="#" class="btn">View comments</a>
  <div id="comment-wrap">
    <iframe src="http://www.facebook.com/plugins/comments.php?..."></iframe>
  </div>
</div>

<style type="text/css">
#comment-wrap{display:none;z-index:5;position:absolute;padding:10px;background-color:#fff;}
#comments:hover #comment-wrap{display:block;}
</style>

Это работает в последних версиях FF, Chrome и Opera.

P.S. Раскрывающееся меню остается выпадающим, когда моя мышь наводит курсор на # comment-wrap.

12 голосов | спросил Linksku 8 J000000Friday11 2011, 05:52:52

4 ответа


0

Я столкнулся с похожими проблемами при работе с классом: hover psuedo. Он начал работать нормально, когда я изменил режим документа в браузере на IE 9, а режим браузера также установил IE9. В IE 9 по умолчанию установлен режим документа IE8.

Кроме того, вы можете добавить следующую мета-информацию в тег head:

<meta http-equiv="X-UA-Compatible" content="IE=9"/>

Надеюсь, это поможет.

ответил Vilas Paskanti 19 62011vEurope/Moscow11bEurope/MoscowSat, 19 Nov 2011 16:46:29 +0400 2011, 16:46:29
0

У меня возникла та же проблема, и я знаю, что это уже старая статья, но я чувствовал, что должен опубликовать свое решение. В основном IE не принимает событие :hover для любых тегов, кроме <a> с указанным href (не работает на ранних, т.е. версиях), если только вы не добавите <!DOCTYPE HTML> вверху. И это было все! Проблема решена:).

ответил CJ Mendes 22 52013vEurope/Moscow11bEurope/MoscowFri, 22 Nov 2013 13:35:05 +0400 2013, 13:35:05
0

К сожалению, это похоже на ошибку браузера, возвращающуюся ко многим версиям IE. Вы можете использовать решение JS в качестве резервной копии в IE. Я создал пример jsFiddle , адаптирующий код из другое решение для решения этой проблемы.

Надеюсь, это поможет!

Редактировать: дальнейшее тестирование в IE9 показывает, что, хотя отображается iframe, при наведении курсора на полосы прокрутки он сразу скрывается. Вероятно, для этого существует более сложное исправление JS, но вам решать, хотите ли вы его реализовать.

ответил imsky 8 J000000Friday11 2011, 06:38:08
0

У меня недавно была проблема с зависанием в IE10 (не уверенная в более низких версиях), которая сводила меня с ума. Я правильно настроил наведение CSS, и оно было для div, содержащего iframe. Проблема заключалась в том, что при наведении указателя мыши на div показывался бы iframe, но как только вы пытались переместить мышь в iframe, он снова исчезал. Я искал везде и ничего не нашел приемлемого для меня ответа, кроме как использовать javascript или jquery. После нескольких дней попыток разобраться в этом я нашел очень простое решение, которое сработало для меня. Я просто удалил iframe из div и использовал такой объект, как

<div class='showme'>links<div style='float:left;' class='showme_1'>
    <object type='text/html' data='http://www.google.com' style='width:100%; height:100%' border='0'>
    </object>
</div>

Надеюсь, это поможет людям сэкономить много времени на исследования.

ответил Dodge 13 PM00000030000001631 2013, 15:36:16

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132