IE 9和早期的IE浏览器在我的复选框周围加上虚线的问题。它似乎想调用post textarea并发布输入,在复选框周围添加一个边框,然后调用post输入焦点并在其周围放置一个背景。
即使我在后期输入中添加了边框0px,虚线也不会消失。没有其他浏览器FF,chrome这样做.... 与复选框.reset文件
无关IE 9中的图片:http://i46.tinypic.com/hvqj2g.png
代码致电:http://i46.tinypic.com/30ic1f5.png
#post textarea,
#post input {
border:1px solid #ddd;
}
#post textarea:focus {
outline: none;
ie-dummy: expression(this.hideFocus=true);
}
#post input:focus {
-moz-box-shadow: 0px 0px 0px 2px #eee ;
-webkit-box-shadow: 0px 0px 0px 2px #eee ;
box-shadow: 0px 0px 0px 2px #eee ;
background: #fefcbe;
-webkit-transition: all .5s ease-in-out;
-moz-transition: all .5s ease-in-out;
transition: all .5s ease-in-out;
}
#post input#submit-btn{
background: #eee;
color:#444;
text-shadow: 1px 1px 1px #fff;
}
Any ideas for IE 9?
答案 0 :(得分:11)
虚线是“焦点矩形”,一种可用性功能,遗憾的是在浏览器中实现不一致。正如您在评论中所述,如果您在元素上设置outline: none
,它就会消失;从技术上讲,焦点矩形是浏览器默认样式表产生的轮廓。这意味着,除其他外,使用Tab键在页面内移动的人(可能是因为他必须)在那里看不到任何焦点指示符,即看不到他在哪里。
根据IE 9的状态(Quirks模式与“标准”模式),焦点矩形出现在复选框周围或相关标签周围。以上评论适用于“标准”模式。
根据您的评论,您的“它像文本框一样行事”的问题无法在不知道您的意思且无法访问代码的情况下得到解决。请发布实际代码或代码URL,而不是包含代码片段图像的屏幕截图。
答案 1 :(得分:1)
适合我:
element:focus{
outline: thin transparent;
}
答案 2 :(得分:-2)
尝试在HTML元素中使用一些javascript:
<input onclick="this.blur()" />