Существует большая соответствующая литература по этой проблеме в радарном мире (она назвала теорию обнаружения).
Вы могли бы взглянуть на "ячейку, составляющую в среднем CFAR" (постоянный уровень ложной тревоги) обнаружение. Википедия имеет немного здесь . Ваша идея очень похожа на это, и она должна работать! :)
Удачи!
Первым делом я бы дважды проверил правильность порядка псевдо-селекторов.
Это должно быть-
a:link {color:#FF0000} /* unvisited link */
a:visited {color:#00FF00} /* visited link */
a:hover {color:#FF00FF} /* mouse over link */
a:active {color:#0000FF} /* selected link */
Единственная конкретная проблема с зависанием IE, которую я помню, касается не -link элементы, поэтому я не думаю, что это ваша проблема. http://www.bernzilla.com/item.php?id=762 - На всякий случай.
Если это не ответ на ваш вопрос, не возражаете ли вы опубликовать связанный блок css?
GAH- Это было непросто!
Похоже, IE ломается, потому что ссылки не имеют связанного элемента Href. Исправьте это, и все будет в порядке.
- Последние новости - Я могу быть идиотом - Это было последнее, что я изменил на своей тестовой странице, и это исправило, но когда я собрал все вместе, оно сломалось везде .. Так что относитесь к тому, что я только что опубликовал, с недоверием. Я отступаю, чтобы посмотреть, что произошло.
Вы можете использовать выражение в своем CSS. Я использую эту технику, разработанную мною для сайта клиента.
Просто поместите ее в КОНЕЦ вашего CSS, поскольку браузеры Webkit не будут читать ничего ниже этого.
* html * { color: expression( (function(who){ if(!who.MXPC){
who.MXPC = '1';
if(who.nodeName != 'A'){
who.onmouseenter=function(){ who.className += ' hover'};
who.onmouseleave=function(){ who.className = who.className.replace(' hover','')}; }
(who==who.parentNode.firstChild) ? who.className += ' first-child' : '' ;
} } )(this) , 'auto') }
Я думаю, что IE 7 исправил проблему наведения курсора на элементы, отличные от
, но не тестировал.
Чтобы исправить Поскольку IE 6 не поддерживает селектор: hover, вам просто нужно использовать javascript, чтобы получить тот же эффект. Установите событие onMouseOver, которое применяет нужный вам класс. : D
Я получаю ошибку javascript (недопустимое значение свойства) в IE в строке ~ 852:
document.getElementById('panel-hlisting-all').style.backgroundColor = color;
, где цвет имеет значение "# ffff100".
Может быть, это причина вашей проблемы?
Ваш CSS выглядит действительным.
Попробуйте добавить '! Important' к вашему a: hover, а также попробуйте изменить другие стили в определении. У вас может быть какой-то другой стиль, перекрывающий этот конкретный стиль a: hover через каскад.
Firebug в FF может показать вам, что некоторые конфликтующие стили наследуются (хотя в IE6 вы, конечно, сами по себе), но вы должны убедиться, что вы не противоречат друг другу. a: hover отлично работает в IE6, так как вы и другие участники вопроса опасаетесь
Кроме того, ставьте точки с запятой и новые строки после ваших объявлений, вы, грязный язычник!
Вы должны поместить атрибут href = ""
в тег
.
Это будет работать нормально.
Также используйте
тег вверху страницы. Теперь все будет хорошо.
Просто подумайте об этом - почему бы не использовать для этого JQuery? достаточно всего НЕСКОЛЬКИХ строк кода.
Сначала загрузите JQuery с www.jquery.com . Затем вы должны правильно связать его со своим файлом в заголовке вашего HTML:
<script src="url_to_your_jquery_file_here"></script>
Затем добавьте еще одну часть Javascript под этим:
<script type="text/javascript" language="javascript">
$(document).ready(function() {
$("li a").hover(
function () {
$(this).css("color", "#3366a9");
},
function () {
$(this).css("color","#838383");
}
);
});
</script>