Вы устанавливаете цвет текста на #nav a:hover
, а цвет фона на #nav li:hover
. Поскольку ваши подменю содержатся в li
, они по-прежнему считаются парящими, даже если курсор находится в подменю. Подменю не содержит внутри ссылки, поэтому они не остаются выделенными и возвращаются к своему обычному цвету. Если вы хотите, чтобы пункт меню прекратил выделение, вместо этого переместите свойство background
в #nav a:hover
.
До:
#nav a:hover {
display: block;
width: 75px;
height: 20px;
color: #FFF;
}
#nav li:hover, #nav li.sfhover {
height: 20px;
background: #0000FF;
}
После того, как:
#nav a:hover, #nav li.sfhover a {
display: block;
width: 75px;
height: 20px;
color: #FFF;
background: #0000FF;
}
В качестве альтернативы, если вы хотите, чтобы меню оставалось выделенным при наведении курсора на подменю (что выглядит лучше, IMO), переместите color
на li:hover
. Я знаю, что это немного многословно, но это работает. : -)
До:
#nav a:hover {
display: block;
width: 75px;
height: 20px;
color: #FFF;
}
#nav li:hover, #nav li.sfhover {
height: 20px;
background: #0000FF;
}
После того, как:
#nav a:hover {
display: block;
width: 75px;
height: 20px;
}
#nav li:hover a, #nav li.sfhover a {
color:white;
}
#nav li:hover li a, #nav li.sfhover li a {
color:blue;
}
#nav li:hover li a:hover, #nav li.sfhover li a:hover {
color:white;
}
#nav li:hover, #nav li.sfhover {
color: #FFF;
height: 20px;
background: #0000FF;
}