6

我想要一个 textarea 500px,这是我用于 textarea 的 CSS:

width: 498px;
padding: 0px;
margin: 0px;

我注意到 IE 和 Chrome1px默认有一个边框,另一方面 FF 有一个2px边框,导致 textarea502px不是500px,有什么解决方法吗?

请注意,我可以明确指定 texarea 边框宽度,即。border-width: 1px,但这里的问题是它不能很好地与 IE 配合使用(当边框设置为 时,IE 中的默认 textarea 边框在视觉上看起来不正常1px),我可以更改边框颜色但我没有不想这样做,我更喜欢保留默认浏览器样式,我只希望所有浏览器的宽度都相同,而不更改默认样式或为边框设置颜色,这可能吗?

4

4 回答 4

8

您可以使用文档顶部的重置 CSS 表将所有浏览器的默认样式设置为相同。我喜欢YUI 自己重置 CSS。这应该将所有控件的基本样式设置为在所有浏览器中都是相同的,并且应该允许更可预测的布局。

IMO 如果您让每个浏览器都有自己的样式(甚至可以由用户自定义!),那么您的应用程序就会出现不可预知的样式,并且会在您从未想过会出现的地方出现问题。最好使用重置 CSS,然后相应地设置应用程序的样式。如果您查看 yahoo 的网站(参考),他们还将拥有自己的“基础”CSS,您可以从这些 CSS 开始,这非常酷。

<link rel="stylesheet" type="text/css" href="http://yui.yahooapis.com/2.6.0/build/reset/reset-min.css"> 
于 2008-12-27T14:01:40.383 回答
0

我们倾向于为 IE 和 FF 创建单独的样式表来绕过它们的“怪癖”。然后可以使用一段简单的代码来确保使用正确的样式表。

<!--[if lte IE 6]> works for < than IE 6
<link href="/css/IE6Below.css" media="screen" rel="Stylesheet" type="text/css" />
<![endif]-->

还有适用于 IE 6 的作品

ETC...

于 2008-12-27T14:02:25.793 回答
0

我们使用 jQuery 来装饰我们的 html 元素并让它处理跨浏览器问题。

于 2008-12-27T14:04:33.700 回答
0

从本质上讲,您很遗憾浏览器默认值与每个浏览器都不相同,但不想自己直接更改这些属性。

这根本不符合逻辑。

像其他人一样,我建议使用重置样式表(我是 Eric Meyer 的忠实粉丝),然后按照您想要的方式设置边框样式。简单的。清除。没有缺点。

于 2008-12-27T17:45:31.460 回答