【发布时间】:2013-10-27 15:24:13
【问题描述】:
谢谢大家。这是一个非常好的讨论,为我澄清了很多。
我正在处理输入字段并想删除大纲,但人们说这是一种不好的做法。我不明白为什么。毕竟,不同的浏览器有不同的轮廓,这就失去了统一性。
无轮廓:
form input[type="text"],
form input[type="email"],
form input[type="password"],
form textarea {
color: #000 !important;
border: 2px solid #bdc3c7;
border-radius: 6px;
padding: 7px 13px;
}
form input[type="text"]:focus,
form input[type="email"]:focus,
form input[type="password"]:focus,
form textarea:focus {
outline: none; }
我的想法是,为了提高一致性,最好去掉轮廓,但我想有些人会争论可访问性。我仍然可以为可访问性添加边框或框阴影,这将有助于网站在所有浏览器中看起来一致:
form input[type="text"],
form input[type="email"],
form input[type="password"],
form textarea {
color: #000 !important;
border: 2px solid #bdc3c7;
border-radius: 6px;
padding: 7px 13px;
}
form input[type="text"]:focus,
form input[type="email"]:focus,
form input[type="password"]:focus,
form textarea:focus {
/* IMPORTANT */ box-shadow: 0px 0px 2pt 2pt #008bd1;
outline: none; }
所以我仍然不明白概述的论点:没有是不好的做法。
看到这个:http://jsfiddle.net/bCGZQ/
编辑:两个答案都不错,但因为第一个引发的争论,我会接受它。
【问题讨论】:
-
我以前从未听说过。我喜欢自己使用
border -
为什么不能只使用自定义大纲?为什么必须删除浏览器给定的轮廓并在其位置放置一个盒子阴影?
-
一个很大的原因 - 大纲独立于布局,允许突出显示链接等元素(请记住,您关心的不仅仅是表单元素)。边框会改变布局。不完全支持框阴影,某些用户可能很难看到。有点相关:stackoverflow.com/questions/3875195/…
-
您可以在这里查看#2 中的推理(尽管他们没有明确说它是“坏的”):sixrevisions.com/css/…
-
@Tim Medora:文本和框阴影也不会影响布局,尽管浏览器支持存在这个问题......
标签: html accessibility css outline