以下代码生成一个包含2个选项的列表框:
<select size="10">
<option>1</option>
<option>2</option>
</select>
是否可以始终在此列表框中显示垂直滚动条? 我问这个问题因为style =“overflow-y:scroll;”在IE7中不起作用。
答案 0 :(得分:10)
它可以在IE7中运行。但是,您需要修复size
小于option
的数量,而不是使用overflow-y:scroll
。在您的示例中,您有2 option
,但您设置size=10
,这将无效。
假设您的选择包含10 option
,然后修复size=9
。
此处,在您的代码参考中,您使用了height:100px
size:2
。我删除了height
css,因为它没有必要并更改了size:5
,它运行正常。
以下是来自jsfiddle的修改代码:
<select size="5" style="width:100px;">
<option>1</option>
<option>2</option>
<option>3</option>
<option>4</option>
<option>5</option>
<option>6</option>
</select>
这将生成比size:2
创建更大的选择框。如果小size
,则选择框不会显示滚动条,您必须使用适当的size
数量进行检查。滚动条如果单击滚动条的上下图标,它将起作用。我在你的小提琴中显示了size:2
和size
大于2
的例子(例如:3,5)。 / p>
这是您想要的结果。我认为这会对您有所帮助:
<强> CSS 强>
.wrapper{
border: 1px dashed red;
height: 150px;
overflow-x: hidden;
overflow-y: scroll;
width: 150px;
}
.wrapper .selection{
width:150px;
border:1px solid #ccc
}
<强> HTML 强>
<div class="wrapper">
<select size="15" class="selection">
<option>Item 1</option>
<option>Item 2</option>
<option>Item 3</option>
</select>
</div>
答案 1 :(得分:0)
我猜你不能,这可能是一个限制或不包含在IE浏览器中。我已经尝试过你的IE6-8的jsfiddle,并且所有这些都没有显示滚动条并且不确定IE9。在FF和chrome中显示滚动条。如果可能的话,我也想看看如何在IE中做到这一点。
如果您确实要显示滚动条,可以添加假滚动条。如果您熟悉RIA中使用的某些js库。与jquery / dojo一样,某些选项是可编辑的,因为它是textbox + select的组合,或者也可以是textbox + div。
例如,请参阅here JavaScript,使其选择为可编辑。
答案 2 :(得分:-2)
添加:
overflow-y: scroll
在你的css萌芽。