如何在不需要时隐藏垂直滚动条

我有一个textarea包含在一个div中,因为我有jQuery的提示,并希望使用不透明度而不改变边框。 有一个可见的垂直滚动条,我只想当我在文本字段中input时显示它,并超出容器。 我已经尝试溢出:汽车; 但不起作用。

文本域:

<label> <div id="name"> <textarea name="message" type="text" id="message" title="Enter Message Here" rows=9 cols=60 maxlength="2000"></textarea> </div> </label> 

样式:

 #name { border: 1px solid #c810ca; width: 270px; height:159px; overflow: hidden; position: relative; } #message { height: 400px; width: 235px; overflow: hidden; position: absolute; } 

overflow: auto (或overflow-y: auto )是正确的方式去。

问题是你的文本区域比你的div高。 div最后切断了文本框,所以即使它看起来应该在文本高于159px时开始滚动,它将不会开始滚动,直到文本高于400px ,这是文本框的高度。

试试这个: http : //jsfiddle.net/G9rfq/1/

我在文本框中设置了溢出:自动,并使文本框的大小与div相同。

另外我不相信在label里面有一个div是有效的,浏览器会渲染它,但是这可能会导致一些时髦的事情发生。 此外你的div没有closures。

overflow: auto;overflow: hidden; 应该这样做我想。

在.css类中添加此类

 .scrol { font: bold 14px Arial; border:1px solid black; width:100% ; color:#616D7E; height:20px; overflow:scroll; overflow-y:scroll; overflow-x:hidden; } 

并使用div中的类。 像这儿。

 <div> <p class = "scrol" id = "title">-</p></div> 

我附上了图片,你看到了上面的代码 在这里输入图像说明