Привязка стиля наведения в IE7

#css

#css

Вопрос:

У меня возникла проблема с моим CSS, которая возникает только в IE7, и я надеюсь, что кто-то еще сталкивался с этим раньше. По сути, у нас есть пользовательский дизайн сетки, в котором ячейки подсвечиваются при наведении курсора мыши. Это отлично работает, однако в IE7 выделение сохраняется, вы наводите курсор на ячейку, затем покидаете ячейку, и выделение все еще там.

Вот css, который я использую для ячейки

 .cell input:hover
{
    background-color: #54B5FF;
}
  

Спасибо!

Редактировать:родительский

 .cell input
{
border:none;
background:transparent;
padding:11px 6px;
width:35px;
height:16px;
line-height:16px;
text-align:right;
background-color:transparent;
border-radius:0;-moz-border-radius:0;-webkit-border-radius:0;
 }
  

редактировать: найдено исправление!

Я нашел исправление, которым, как я думал, поделюсь со всеми, кто столкнется с этой ошибкой в будущем. По-видимому, в IE7 только определенные изменения стиля вызывают ситуацию, называемую hasLayout, которая, по-видимому, приводит к правильному повторному отображению. В моем случае я изменил код на

 .cell input:hover
{
position: static;
background-color: #D7ECFF;
}
  

Это ничего не изменило, но заставило IE7 правильно отобразить его!

Комментарии:

1. Подождите… IE7 поддерживает наведение курсора мыши на входные данные? Вы вообще не используете javascript?

2. Да, и смотрите мою правку для решения

3. Немного покопавшись, я вижу, что IE7 действительно поддерживает псевдокласс :hover при использовании со строгим doctype . Чем больше вы узнаете.

Ответ №1:

Установите значение по умолчанию.

Попробуйте:

 .cell input {
    background-color: #fff; /* or whatever you want it to be... */
}

.cell input:hover
{
    background-color: #54B5FF;
}
  

Комментарии:

1. Извините, я должен был опубликовать родительский .cell input { border:none; background:transparent; padding:11px 6px; width:35px; height:16px; line-height:16px; text-align:right; background-color:transparent; border-radius:0;-moz-border-radius:0;-webkit-border-radius:0; }