在Firefox(当前版本14.0.1)中,我围绕我创建的<area>
个标记here (http://mediabrands.com.au/)得到了一个虚线轮廓。我不仅看到了虚线,而且一旦它出现了我就无法摆脱它(例如通过点击另一个区域)。
我在这里和谷歌搜索了相当长的时间,但仍未设法摆脱它们。它们不会出现在任何其他浏览器中。
我尝试过的事情(以及下面的所有组合)都没有成功:
outline: none
添加到img,地图和区域代码(以及他们的:focus
和:active
)对应代码。border: none
。hidefocus="hidefocus"
。::-moz-focus-inner{ border: none; outline: none; }
为每个元素添加了各种组合。.focus(function(){ $(this).blur(); })
(jQuery)。我相信我已经用尽了所有能够遇到的信息 - 还有其他方法可以摆脱这些界限吗?
这是用于快速参考的HTML,以及因为我无法摆脱它的原因的可能性:
<img src="anatomy/dial/components/foundation.png" id="dial-map" usemap="#dial" />
<map name="dial">
<area title="Ansible" class="tab" id="click-ansible" shape="poly" coords="412,419,376,447,313,474,248,487,247,434,327,415,374,377" href="#">
<area title="Cadreon" class="tab" id="click-cadreon" shape="poly" coords="487,245,478,313,455,366,416,417,378,380,429,299,434,246" href="#">
<area title="Orion" class="tab" id="click-orion" shape="poly" coords="418,73,453,117,482,191,484,242,431,244,422,180,378,111" href="#">
<area title="Ensemble" class="tab" id="click-ensemble" shape="poly" coords="247,1,311,10,368,35,415,70,378,108,312,66,244,53" href="#">
<area title="Reprise" class="tab" id="click-reprise" shape="poly" coords="73,69,111,39,176,8,242,2,243,53,172,66,112,108" href="#">
<area title="Magna Global" class="tab" id="click-magnaglobal" shape="poly" coords="245,487,186,481,114,450,71,417,110,377,175,423,246,432" href="#">
<area title="Airborne" class="tab" id="click-airborne" shape="poly" coords="69,414,37,373,12,316,2,244,55,244,68,322,106,375" href="#">
<area title="Marketing Sciences" class="tab" id="click-analytics" shape="poly" coords="2,242,11,171,33,120,71,74,109,109,70,168,54,241" href="#">
<area title="MB3" class="tab" id="click-mb3" shape="poly" coords="257,430,178,422,120,384,82,340,140,305,163,337,206,360,262,364,317,342,348,305,404,340,384,367,324,413" href="#">
<area title="UM" class="tab" id="click-um" shape="poly" coords="307,134,245,116,246,56,309,68,375,109,418,178,430,237,429,288,404,339,350,303,368,246,358,198,344,169" href="#">
<area title="Initiative" class="tab" id="click-initiative" shape="poly" coords="80,339,63,289,58,235,72,171,109,112,176,67,243,56,242,119,192,128,152,159,126,206,122,261,137,306" href="#">
<area title="View Website" id="website" shape="poly" coords="173,330,139,292,133,213,161,167,196,143,245,129,305,146,336,176,359,246,339,300,309,335,260,352,209,351" href="#">
</map>
答案 0 :(得分:7)
问题是你在dial.js第151行的模糊聚焦功能。删除它可以解决问题。
$("img, area, map").focus(function(event) {
$(this).blur();
});
为防止对区域元素进行关注,请将tabindex
设为-1
,即
<area tabindex="-1" title="Ansible" class="tab" id="click-ansible" shape="poly" coords="...
答案 1 :(得分:3)
焦点模糊似乎导致问题:
从dial.js中删除:
// Prevent focus of areas.
$("img, area, map").focus(function() {
$(this).blur();
});
这是我为简化一切而做的一个小提琴:http://jsfiddle.net/MadLittleMods/gDrAS/ 评论并取消注释javascript以查看不同的结果。
模糊和焦点的解决方案是使用event.preventDefault()
。因此,您可以将上面删除的内容替换为:
// Prevent focus of areas.
$("img, area, map").focus(function(e) {
e.preventDefault();
});
使用tabindex
属性还有一个tabindex="-1"
修正。
答案 2 :(得分:0)
尝试将区域焦点和活动状态设置为边框0,如下所示:
根据以下问题:Blue border around image maps in Internet Explorer 9
a,
img {
outline: none;
}
map > area,
map > area:active,
map > area:focus {
outline: none;
border: 0;
}
答案 3 :(得分:-2)
尝试使用CSS:text-decoration:none;