如何在IE8中禁用文本区域的默认滚动条?

11

我正在查看一些旧网站,其中包含联系表单。在IE8中,即使没有内容,我的文本区域始终显示垂直滚动条。

在Firefox中,似乎只有当文本区域的内容达到需要滚动条的高度时才会出现垂直滚动条。

我已经在我的旧网站上对输入框进行了样式设置,而默认出现滚动条会使它们看起来很丑。

我的问题是,有什么方法可以解决这个问题,或者这只是IE8的默认行为?

我尝试过设置overflow: auto,但并没有起作用。


很奇怪。你是在寻找CSS解决方案,还是可能是jscript? - Kevin Brown
最好使用CSS...但如果必须的话,可以使用JS。 - alex
你尝试过像下面提到的那样使用 overflow: hidden 吗? - Kevin Brown
1
我认为那会阻止人们完全滚动,如果他们输入的文本超过文本区域的高度,那可能会有问题。 - alex
2个回答

23

我现在无法在IE8上进行测试,但是我可以告诉你这在IE6中是有效的:

textarea {
  overflow-y: auto;
}

-3

使用 overflow: hidden 就可以了。

<HTML>
    <BODY>
        <textarea rows="10" style="overflow: hidden;"/>
    </BODY>
</HTML>

3
如果用户输入的文本超出可见区域,那将会给用户带来极大的困难。 - Rex M
不好的解决方案。这会隐藏文本,很可能会让用户感到困惑。 另外,你的标记混乱遵循哪个标准? - You
我以为OP只是希望滚动条根本不在那里...我的错! - Tejs
我个人更喜欢在使用文本区自动调整大小时(有jQuery插件可用),这种情况下JS会确保文本区随内容增长而增长。然而,有时这些插件不是像素完美的,在IE的单行情况下出现滚动条时就无法解决问题,但是overflow:auto则可以。所以这里+1。(我想象一下,在没有经过充分测试的较不流行的浏览器上,如移动设备上,JS自动调整大小可能会成为一个问题,在这种情况下,这样的TEXTAREA中的大量文本实际上可能会被隐藏...) - Jakub P.

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