隐藏IE中多行文本框中的垂直滚动条

dan*_*ani 11 html asp.net

我有一个多行文本框:

<asp:TextBox ID="txtBody" runat="server"  TextMode="MultiLine" Rows="10" Width="95%" />
Run Code Online (Sandbox Code Playgroud)

即使文本框内的文本不占用10行,也会有一个垂直滚动条.
在Firefox中没有发生,只有当文本超过10行时才会出现滚动条.

可以做些什么?

awe*_*awe 18

将CSS样式溢出设置为auto:

<asp:TextBox ID="txtBody" runat="server" TextMode="MultiLine"
             Rows="10" Width="95%" style="overflow:auto;" />
Run Code Online (Sandbox Code Playgroud)

浏览器的默认行为不同,这就是为什么在overflow未指定IE和FF时会看到不同的行为.

要覆盖页面上所有多行文本框的默认浏览器行为,可以将其添加到样式定义中.然后,您不需要在每个文本框中包含内联样式:

注意:使用HTML标记呈现多行TextBox <textarea>,因此我们将为textarea元素类型指定css样式.

textarea {
  overflow: auto;
}
Run Code Online (Sandbox Code Playgroud)
<textarea id="txtBody1" rows="5">Text in 
textbox 
with 
many 
lines, 
so that
scrollbar 
will 
appear.
</textarea>
<textarea id="txtBody2" rows="5">Smaller text, no scrollbar.</textarea>
Run Code Online (Sandbox Code Playgroud)