2015-12-12 82 views

回答

3

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

的选择元件,使用正是如此描述什么样的HTML5规范调用placeholder label option,方法实现“占位符”:

如果select元素已经指定required属性,没有指定multiple属性,显示尺寸为1;如果在选项select元素的列表(如果有的话)的第一option元素的值是空字符串,那option元素的父节点是select元件(而不是一个optgroup元件),则该optionselect元件的占位符标签选项

而且它提供了以下示例:

代码示例:

下面的示例示出了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> 

如果没有默认选项,占位符可以用来代替:

<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> 

这个成语已经在事实上已经在自古以来使用。

+0

好的,我接受非常完整的答案谢谢。仅仅一个简单的问题是,它仍然无法将文本置于选择框中?我从3年前看过一篇文章,说这是不可能的。 http://stackoverflow.com/questions/10813528/is-it-possible-to-center-text-in-select-box –

1

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

+0

好吧我现在明白Manivannan非常感谢。 –