Ответ 1
К сожалению, я думаю, что hideFocus
- ваш лучший ответ, поскольку размытие не всегда уместно:
<a href="..." hidefocus="hidefocus">...</a>
http://msdn.microsoft.com/en-us/library/ms533783(VS.85).aspx
Я пытаюсь сделать уродливую серая рамка, которая появляется вокруг тегов привязки. Свойство CSS outline:none;
работает для Firefox, но как я могу это сделать в IE? Предпочтительно использовать выражения CSS или jQuery. Я не беспокоюсь о доступности BTW.
Основываясь на ваших предложениях, я нашел, что это лучшие решения:
jQuery (для браузеров IE):
$('a').focus(function() {
$(this).blur();
});
Другой параметр jQuery (только для браузеров IE):
$('a').focus(function() {
$(this).attr("hideFocus", "hidefocus");
});
CSS (для всех других браузеров, которые вызывают контур):
a {
outline: none;
}
Примечание. Некоторые браузеры, такие как Google Chrome, не вызывают контур фокуса.
К сожалению, я думаю, что hideFocus
- ваш лучший ответ, поскольку размытие не всегда уместно:
<a href="..." hidefocus="hidefocus">...</a>
http://msdn.microsoft.com/en-us/library/ms533783(VS.85).aspx
Похоже, вы говорите о пунктирной границе, которая появляется, когда вы просматриваете ссылки. У вас есть правильное решение для Firefox (контур: нет в CSS). Лучшим решением, которое я использовал для IE, является добавление прослушивателя onfocus, который удаляет фокус:
<a href="" onfocus="this.hideFocus=true;">link</a>
Взгляните на этот сайт для примера того, как вы можете сделать это глобально: http://codylindley.com/Javascript/223/hiding-the-browsers-focus-borders-should-i-shouldnt-i
Если мне не хватает, какая пунктирная граница обсуждается, схема: ни один не работает в Internet Explorer 8 (по крайней мере, для меня). Скорее всего, некоторые гиперссылки отображались с пунктирной рамкой (единственным атрибутом, который я помню, является отображение: inline на элементе h2, содержащем ссылку, после чего появилась пунктирная рамка). Поэтому я бросил {план: нет; } в моей глобальной таблице стилей и poof, больше нет границ в IE8!
Для IE вы можете использовать Javascript следующим образом:
<a href="..." onfocus="this.blur();">Click Here</a>
Подробнее: http://www.htmlgoodies.com/beyond/javascript/article.php/3471171
Для Firefox и Safari контур: none работает.
Подробнее: http://css-tricks.com/removing-the-dotted-outline/
Не работает ли это?
a
{
border: 0;
}
a {outline:noneIE 8}
css, похоже, хорошо работает на Firefox, Chrome и IE 8.
a {
outline: 0 none !important;
border: none;
}