为什么HTML选择框不支持占位符属性?

时间:2015-12-12 04:27:57

标签: html placeholder

我正在使用html选择框,并且发现他们目前don't支持占位符属性,但我并不完全理解为什么会出现这种情况。

我想了解这是什么原因?感谢您的任何见解。

2 个答案:

答案 0 :(得分:3)

可能,这是因为传统的占位符文本在select元素中没有意义,因为您只有一组预定义的选项可供选择。您无法在许多桌面应用程序中使用可编辑的组合框编辑选择元素中的文本,但这只是因为HTML根本不提供开箱即用的可编辑选择元素。

select元素通过HTML5规范称之为placeholder label option的方式实现“占位符”,如下所述:

  

如果select元素指定了required属性,则未指定multiple属性,且显示大小为1;如果option元素的选项列表中的第一个select元素的值(如果有)是空字符串,并且option元素的父节点是select元素(而不是optgroup元素),option元素是占位符标签选项。{/ p>

它给出了以下示例:

  

代码示例:

     

以下示例显示如何使用select元素为用户提供一组选项,用户可以从中选择单个选项。默认选项已预先选定。

select
     

如果没有默认选项,则可以使用占位符:

<p>
 <label for="unittype">Select unit type:</label>
 <select id="unittype" name="unittype">
  <option value="1"> Miner </option>
  <option value="2"> Puffer </option>
  <option value="3" selected> Snipey </option>
  <option value="4"> Max </option>
  <option value="5"> Firebot </option>
 </select>
</p>

这个成语实际上自古以来一直在使用。

答案 1 :(得分:1)

当用户未提供任何值时,将显示占位符文字。 selectbox,在这种情况下,当用户没有输入值时,将显示第一个选项。因此,我们可以使用1st <option>作为占位符文本&amp;占位符属性不是必需的。