Вопрос

Я создал класс CSS следующим образом:

div.ycontent div.ppclisting { background-color:#cccccc; }
div.ycontent div.ppclisting:hover { background-color:#FFE5DF; }

Я применил вышеуказанный стиль на одной из своих страниц, и он отлично работает в Firefox, IE 7.0+ и других последних браузерах.Но когда я применяю тот же стиль на другой странице, он не работает.

Может кто-нибудь сказать мне, в чем может быть причина?почему он не работает на другой странице.

Это было полезно?

Решение

Я получил ответ, почему :hover не работает на другой странице.На самом деле на второй странице тег DOCTYPE не был добавлен на страницу HTML, как показано ниже:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">

Раньше это было просто <html> тег и из-за чего :hover на div не работал.После добавления тега doctype, как показано выше, он у меня работает.

Спасибо всем вам за помощь.

Другие советы

Только что была похожая проблема.Убедитесь, что вы складываете правильно!То есть z-индекс.

Если в одном месте он работает, а в другом нет, то либо он некорректно вызывается, либо некорректно применяется.

Используйте Firebug и посмотрите, какие свойства имеет элемент, который должен стили действительно есть.Затем проверьте имена классов на наличие опечаток.Обычно это решает описанную проблему.

Кроме того, в IE6 :hover работает только с a элементы.Запомни.

Я согласен с Брэндоном.

я тоже добавлю..

Если вы удалите:

div.ycontent 

раздел из ваших строк, чтобы он выглядел так:

.ppclisting { 
background-color:#cccccc; 
}

.ppclisting:hover { 
background-color:#FFE5DF; 
}

Возможно, вы обнаружите, что это будет работать на другой вашей странице.

Почему?Потому что вы определили эти стили как «классы».Классы намерены применять один и тот же стиль множество раз.

Размещая перед ним «div.ycontent», вы по сути «ограничиваете»/не используете потенциал классов CSS.

Может быть, вложенный div на другой странице не имеет класса ycontent и/или сам элемент не является классом ppclising?

У меня только что была позиция: абсолютная, когда родитель сломал мой :hover, хотя, похоже, это не проблема для дедушки и бабушки.Я новичок во всем этом, поэтому не знаю, нормально это или нет.

Поправка:Для меня это оказалось проблемой z-index.Мне нужно было поставить -1 для родительского элемента, 0 для всех братьев и сестер с указанной позицией и 1 для элементов div, для которых я хотел активировать наведение.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top