【发布时间】:2012-02-18 19:50:10
【问题描述】:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
<head>
<style type="text/css">
input {
border-width: 2px; /* causes button to change dramatically in IE and FireFox */
}
</style>
</head>
<body>
<input type="button" value="Print"/>
</body>
</html>
如果我让每个浏览器都呈现没有任何样式的按钮,它们看起来都类似于:
例如,在 IE 8 中,默认边框宽度为 2px。我所做的是为将边框宽度设置为 2px 的按钮添加样式。所以,我根本没有改变边框宽度。但是,在重新加载页面后,按钮现在看起来像这样:
我完全不明白。我查看了开发者工具栏、Opera 的开发工具、Firebug、Safari 的开发工具,并分析了每个按钮。为什么 FireFox 和 IE 会导致按钮发生如此巨大的变化,而 Safari、Chrome 和 Opera 的外观和感觉却完全一样?我不明白为什么按钮会改变颜色并失去它的“四舍五入”而变成“方形”。
我什至添加了我随处可见的 YUI 重置链接,研究了这个问题,但没有帮助。
我做错了什么?
我只想让按钮的边框、内边距和边距在所有浏览器中都一样,这样它们看起来都一样,同时保持它的外观和感觉就像默认按钮 (),但是 IE 和 FireFox 让这变得困难目前。
谢谢。
【问题讨论】:
-
你可以加
border-radius:2px; -
还可以查看-moz-appearance, -webkit-appearance 以了解使用平台默认样式。
标签: css internet-explorer button cross-browser border