Html选择标签中的多行选项可能吗?

时间:2009-07-22 13:44:05

标签: html html-select

是否可以(仅使用HTML)显示selectoption每个跨越多行?

7 个答案:

答案 0 :(得分:13)

使用html选择控件是不可能的。

您可以使用可以作为下拉列表的div使用JavaScript和css。

答案 1 :(得分:5)

不仅在标准html上不可能,而且它(作为对象)将与IOS设备处理 选项标记 的方式不兼容,这是显示滚动列表,因此要求 选项标记 以这种方式行事是不合理的,因为它会严重和意外地破坏跨设备兼容性。

正如其他人已经回答的那样(我还没有足够的声誉进行upvote或评论)已经说过,它必须用css / div样式等来完成,并且以这种方式在每个中具有完整的html功能更加可扩展strong> 选项标记 以及(通过CSS样式)对移动设备友好。

答案 2 :(得分:3)

如果您的案例是围绕iOS截断长选项文本,那么How to fix truncated text on <select> element on iOS7的解决方案可以提供帮助。

  

在选择列表的末尾添加一个空的optgroup:

你可以这样实现:

<select>
  <option selected="" disabled="">option first</option>
  <option>another option that is really long and will probably be truncated on a mobile device</option>
  ...
  <optgroup label=""></optgroup>
</select>

答案 3 :(得分:1)

由于select元素的呈现取决于用户代理,我担心你不能拥有它,除非一些UA实际实现它。但select作为ListBox或ComboBox从未真正需要跨越多行的项目。此外,它会极大地混淆用户,因为他们习惯于一行=一项。

答案 4 :(得分:0)

没有

您可以使用单选按钮,但<label>可以自动换行。

答案 5 :(得分:0)

通过在HTML元素上使用一些带有CSS样式的JavaScript,可以使用像Dojo Toolkit这样的框架轻松完成。否则,请使用Radio或Checkbox控件。

答案 6 :(得分:-4)

怎么样:

<!DOCTYPE html>
<html>
<body>

<select size="13" multiple>
  <option value="volvo">Volvo</option>
  <option value="saab">Saab</option>
  <option value="opel">Opel</option>
  <option value="audi">Audi</option>
  <option value="volvo">Volvo</option>
  <option value="saab">Saab</option>
  <option value="opel">Opel</option>
  <option value="audi">Audi</option>
  <option value="volvo">Volvo</option>
  <option value="saab">Saab</option>
  <option value="opel">Opel</option>
  <option value="audi">Audi</option>
  <option value="volvo">Volvo</option>
  <option value="saab">Saab</option>
  <option value="opel">Opel</option>
  <option value="audi">Audi</option>
</select>

</body>
</html>

我不知道这是不是你想要的,但也许它可以帮助你。

如果要选择多个选项,则必须按Ctrl +单击以选择更多选项。

如果要禁用多选,只需从SELECT标记中删除“multiple”参数。