为什么 HTML select 框不支持 placeholder 属性?
Why doesn't HTML select box support the placeholder attribute?
我正在使用 html select 框,发现它们目前 don't 支持占位符属性,但我不完全理解为什么会这样。
如果有的话,我想了解一下这是什么原因?感谢您的任何见解。
当用户没有输入任何值时,将显示占位符文本。
选择框,在这种情况下,当用户未输入值时,第一个选项将出现。所以我们可以使用 1st <option>
作为占位符文本,不需要占位符属性。
这很可能是因为传统的占位符文本在 select 元素中没有意义,因为您只有一组预定义的选项可供选择。您不能像许多桌面应用程序中的可编辑组合框那样编辑 select 元素中的文本,但这只是因为 HTML 根本不提供可编辑的 select 元素盒子的。
select 元素通过 HTML5 规范称为 placeholder label option 的方式实现“占位符”,描述如下:
If a select
element has a required
attribute specified, does not have a multiple
attribute specified, and has a display size of 1; and if the value of the first option
element in the select
element's list of options (if any) is the empty string, and that option
element's parent node is the select
element (and not an optgroup
element), then that option
is the select
element's placeholder label option.
它给出了以下示例:
Code Example:
The following example shows how a select
element can be used to offer the user with a set of options from which the user can select a single option. The default option is preselected.
<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>
When there is no default option, a placeholder can be used instead:
<select name="unittype" required>
<option value=""> Select unit type </option>
<option value="1"> Miner </option>
<option value="2"> Puffer </option>
<option value="3"> Snipey </option>
<option value="4"> Max </option>
<option value="5"> Firebot </option>
</select>
这个成语其实自古就有。
我正在使用 html select 框,发现它们目前 don't 支持占位符属性,但我不完全理解为什么会这样。
如果有的话,我想了解一下这是什么原因?感谢您的任何见解。
当用户没有输入任何值时,将显示占位符文本。
选择框,在这种情况下,当用户未输入值时,第一个选项将出现。所以我们可以使用 1st <option>
作为占位符文本,不需要占位符属性。
这很可能是因为传统的占位符文本在 select 元素中没有意义,因为您只有一组预定义的选项可供选择。您不能像许多桌面应用程序中的可编辑组合框那样编辑 select 元素中的文本,但这只是因为 HTML 根本不提供可编辑的 select 元素盒子的。
select 元素通过 HTML5 规范称为 placeholder label option 的方式实现“占位符”,描述如下:
If a
select
element has arequired
attribute specified, does not have amultiple
attribute specified, and has a display size of 1; and if the value of the firstoption
element in theselect
element's list of options (if any) is the empty string, and thatoption
element's parent node is theselect
element (and not anoptgroup
element), then thatoption
is theselect
element's placeholder label option.
它给出了以下示例:
Code Example:
The following example shows how a
select
element can be used to offer the user with a set of options from which the user can select a single option. The default option is preselected.<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>
When there is no default option, a placeholder can be used instead:
<select name="unittype" required> <option value=""> Select unit type </option> <option value="1"> Miner </option> <option value="2"> Puffer </option> <option value="3"> Snipey </option> <option value="4"> Max </option> <option value="5"> Firebot </option> </select>
这个成语其实自古就有。