CSS:Chrome中的按钮大小与Firefox不同

Han*_*ank 20 html css firefox google-chrome

我有以下HTML代码:

<style type="text/css">
.submitbutton{margin-left:-2px;padding:1px}
</style>
...
<form> 
... 
<input class=submitbutton type=submit value="Create Listings" /> 
</form>
Run Code Online (Sandbox Code Playgroud)

在Firefox中,输入按钮具有比Chrome更多的填充.

有什么想法吗?

更新:如果你想知道为什么我有负余量 - 这是因为在输入字段和输入按钮之间 - 存在太多空间.

Jea*_*ert 67

/* Remove button padding in FF */
button::-moz-focus-inner {
    border:0;
    padding:0;
}
Run Code Online (Sandbox Code Playgroud)

您将在Chrome和Firefox中获得相同的按钮外观.

  • 我不得不给你一个+1,非常有帮助!为什么你不能在Firebug中看到Mozilla专有的伪类?Chrome有它们. (2认同)
  • +1因为它似乎删除按钮文本上的一些随机水平"填充",但我仍然得到不应该在那里的文本上方和下方1px. (2认同)
  • {"为什么你不能在Firebug中看到Mozilla专有的伪类?Chrome有它们"} DOM Inspector插件可以 (2认同)

Joh*_*n K 11

即使您作为不同浏览器中的开发人员测试并看到按钮的不同,用户也不会.很容易专注于用户不会注意到的事情:用户可能有Firefox或其他IE或Chrome,但不是全部.用户很少会随着时间的推移切换浏览器,更不用说在它们之间切换并抱怨几个像素差异.

因此,如果您一次只考虑一个浏览器中的按钮和体验,并且如果它在该体验/浏览器中运行良好,那么就不必花费更多时间.而是转到下一步.

这并不能回答"为什么",而是有人解释了这一点.

  • 如果您的按钮是独立的,这可能是一个很好的解决方案.但是,一旦它紧挨着其他元素应该具有相同的高度并且在底部对齐,你的布局就会破裂. (10认同)
  • 虽然这是真的,但我同意它(我每天都使用这个前提),按钮大小会影响页面的可用性和可访问性.考虑到这些,更大的按钮目标可能非常有价值. (2认同)

cor*_*ded 4

根据操作系统和/或浏览器的不同,表单元素的呈现方式有所不同(默认)。如果您希望表单元素(输入字段、提交按钮等)在所有实例中看起来都相同,则必须使用边框、填充和边距显式设置它们的样式。