【问题标题】:Remove blue border from image in Chrome从 Chrome 中的图像中删除蓝色边框
【发布时间】:2020-10-17 05:27:54
【问题描述】:

我搜索了整个网络并尝试了所有发布的补救措施,但均无济于事;无论如何,大多数答案都不适合我的情况。

守则:

<form method = "post" action = "index.php">
    <input type = image alt = Submit alt = "" id = "zy" src = "Images/Button_Close_1.png" onmouseover = "this.style.cursor = 'hand';
     SetImage('zy','Images/Button_Close_2.png');
     return false;"  onmouseout = "SetImage('zy','Images/Button_Close_1.png');
     return false;" border = "0" height = "37" width = "183" />
</form>

SetImage 是一个 javascript 函数,它获取第一张图像并将其替换为第二张图像,从而为您提供自定义的“悬停”按钮。

使用 CSS 可能有更简单的方法,但我已经使用这段代码有一段时间了。

问题: 在最新版本的 Chrome(谢谢,Google)中,当您单击这些图像时,它们周围都有一个难看的蓝色边框。我似乎无法摆脱它!

我的表单需要自定义图像,但我真的很想摆脱这条线。有什么想法吗?

【问题讨论】:

标签: javascript google-chrome


【解决方案1】:

作为Remove blue border from open element 中的 NKL 建议:

在你的 CSS 中尝试outline: none

例子:

image{
    outline:none;
}

蓝色边框可能看起来很难看,但在页面上仍然可以很好地帮助 TAB 导航并为残疾人提供更好的方向。

【讨论】:

    【解决方案2】:

    要从所有输入、按钮和图像中删除它:

    input:focus, textarea:focus, select:focus, button:focus, img:focus {
        outline: none;
    }
    

    【讨论】:

      【解决方案3】:

      此线程中的两个解决方案与可访问性最佳实践相冲突。

      在这里查看一些很棒的建议:https://www.a11yproject.com/posts/2013-01-25-never-remove-css-outlines/

      TL;DR:轮廓旨在显示键盘焦点,并且应该始终存在某种形式的视觉指示器。

      【讨论】:

      • 您的回答应该作为评论。您确实发布了外部链接。根本不鼓励这样做。请参阅 SO 上的“如何回答”。
      • 很抱歉,这是我第一次尝试为 SO 做出贡献,并在第一个回复中看到了一个链接。我觉得提供我的回复的背景将有助于为我的回复提供背景。具有讽刺意味的是,我可以使用“如何回答”的链接
      • 您应该在您的答案上使用“如何回答”链接。如果您想为您的答案提供上下文,您应该努力并在此处输入一些文字。上下文可能是文档或引文的摘录。不管怎样,这个网站有一切办法支持这种格式。
      • 什么是“如何回答”链接?
      猜你喜欢
      • 2013-04-17
      • 2014-02-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-01-20
      • 2011-08-26
      • 1970-01-01
      • 2013-12-18
      相关资源
      最近更新 更多