-moz-focus-inner

14

在另一个问题中,我问到有关对齐的问题,为了回答关于火狐浏览器的问题,有人给了我这个解决方法。虽然它有效,但留下了不好的印象,我会解释原因。

button::-moz-focus-inner { 
  border: 0;
  padding: 0;
}

在这个例子中,Opera(10版)、Firefox(3版)和Internet Explorer(7版)都以不同的方式显示input[type="submit"]按钮。在Opera 10上,focus-inner属性默认为0,在Firefox上大约为5像素,在Internet Explorer上必须为6像素。

我该如何将它们全部重置为0?是否有一个标准的CSS调用可以不仅完成上述操作,还可以设置IE的隐藏属性?


3
我怀疑MSIE和Opera是否知道如何呈现-moz开头的属性。 :) - n1313
n1313,这并不是真正的问题。问题在于提交按钮被所有浏览器使用。它们似乎都在内部设置了这个值,我想知道1)为什么?!?!?2)一种简单的方法来一次性更改它们所有。 - Dorjan
2014 年了,这种事情仍然会发生... 而且,如果按钮已经定义了高度,它并不能真正帮助你... - Gonçalo Vieira
1个回答

6
这种情况发生的原因很简单:因为所有这些浏览器都是由不同的人制作的。例如,尝试从Safari查看您的按钮。并没有一条CSS规则可以强制所有主要浏览器中的所有按钮看起来相同。
好吧,实际上,如果您像这样,对每个按钮进行个性化处理,您可以实现像素级完美。而且您始终可以使用<input type="image">,这肯定会奏效。

"type=image"会阻止表单的提交操作,即使没有 JavaScript,对吧? - Dorjan
1
我明白它们是由不同的人制作的,但是它们肯定可以开放设计(就像Firefox尝试做的那样),这样其他人就可以按照自己的方式“修复”它们了,对吗? - Dorjan
4
不,type=image等同于type=submit。你可以点击它来提交表单。 - n1313
好吧,我想要的得不到,所以我会把这个作为一个可能的备选方案。谢谢 n1313。 - Dorjan

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接
  • 相关问题