Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/88.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Html 禁用元素在chrome和firefox中获得焦点_Html_Tabindex - Fatal编程技术网

Html 禁用元素在chrome和firefox中获得焦点

Html 禁用元素在chrome和firefox中获得焦点,html,tabindex,Html,Tabindex,我使用的是img标签。通常图像不会包含在选项卡导航流中。因此,我将img标记的“tabindex”属性设置为0,以便将其包含在流中。我把它禁用了。在这种情况下,在IE中,该img没有得到关注。而在FF和Chrome中,它虽然被禁用,但仍能获得焦点。我的观察结果是,tabindex=0的元素,尽管已启用或禁用,但会包含在webkit中的选项卡导航流中 如何克服这个问题 原始代码: <img id="_arrowdown" tabindex='0' src="icons/ArrowDown.p

我使用的是img标签。通常图像不会包含在选项卡导航流中。因此,我将img标记的“
tabindex
”属性设置为0,以便将其包含在流中。我把它禁用了。在这种情况下,在IE中,该img没有得到关注。而在FF和Chrome中,它虽然被禁用,但仍能获得焦点。我的观察结果是,tabindex=0的元素,尽管已启用或禁用,但会包含在webkit中的选项卡导航流中

如何克服这个问题

原始代码:

<img id="_arrowdown" tabindex='0' src="icons/ArrowDown.png"/> 
<img id="_arrowdown" tabindex='0' src="icons/ArrowDown.png" onFocus="if(document.getElementById('_arrowdown').disabled == true){return false;}" disabled='true'>

已尝试修复:

<img id="_arrowdown" tabindex='0' src="icons/ArrowDown.png"/> 
<img id="_arrowdown" tabindex='0' src="icons/ArrowDown.png" onFocus="if(document.getElementById('_arrowdown').disabled == true){return false;}" disabled='true'>

但此修复程序不起作用。

您可以添加

img:focus {
outline-width: 0;
}


更新了适用于禁用的
img

您可以在设置
disabled
时设置
tabindex=-1
,在启用img时设置
tabindex=0

这将防止图像仅在禁用时聚焦。

首先,禁用的
不是
的有效HTML 5属性–这意味着什么?如果要设置自定义属性,请使用
data-*
,如
data mydisabled

正确的方法是设置
tabindex=-1


这将再次从选项卡流中删除图像。

我不希望图像仅在禁用时聚焦。不总是这样。@Rajasri.J。。检查此更新的小提琴仅适用于禁用的图像@Rajasri.J.。如果它适用于,您可以检查它是否正确。它可能会帮助其他人。这只是在视觉上隐藏焦点!img将stll接收焦点。