使用 HTML5 为 <select> 框创建占位符
<select> 标记不存在占位符属性。
但是,有一些方法可以为选择框制作占位符。
为 <select> 元素创建占位符的最简单方法是使用 disabled 和 selected 属性以及 HTML5 hidden 全局属性。
使用 HTML5 为 <select> 框创建占位符的示例:
<!DOCTYPE html> <html> <head> <title>文档的标题</title> </head> <body> <h2>Select box with a placeholder</h2> <select name="drinks" required> <option value="" disabled selected hidden>Choose a drink</option> <option value="coffee">Coffee</option> <option value="tea">Tea</option> <option value="milk">Milk</option> </select> </body> </html>
结果
选择带有占位符的框 选择饮品 咖啡 茶 牛奶
这是为选择框添加占位符的第二种方法。
首先,我们需要在 <option> 标签的帮助下创建选择项。
然后,为空元素设置 disabled 和 selected 属性,这应该是占位符。
现在,我们可以看到第一行就像一个占位符字段。
它将无法检测但仍然可见。
为带有不可选择行的 <select> 框创建占位符的示例:
<!DOCTYPE html> <html> <head> <title>文档的标题</title> </head> <body> <h2>Select box with a placeholder</h2> <select name="drinks" required> <option value="" disabled selected>Choose a drink</option> <option value="coffee">Coffee</option> <option value="tea">Tea</option> <option value="milk">Milk</option> </select> </body> </html>
要在用户单击选择选项后使其不可见,我们必须将 display 属性设置为其“none”值。
并且还设置 :invalid 伪类无法验证 <select> 框占位符的内容。
此外,使用 CSS color 属性为占位符指定颜色。
当需要 <select> 元素时,它允许使用 CSS :invalid 伪类,它允许我们在 <select> 元素处于“占位符”状态时为其设置样式。
由于占位符选项中的空值, :invalid 在这里有效。
当一个值被设置时, :invalid 伪类被删除。
我们还可以选择使用 :valid 伪类。
使用 :required 和 :invalid 伪类为 <select> 框创建占位符的示例:
<!DOCTYPE html> <html> <head> <title>文档的标题</title> <style> select:required:invalid { color: #666; } option[value=""][disabled] { display: none; } option { color: #000; } </style> </head> <body> <h2>Select box with a placeholder</h2> <select name="drinks" required> <option value="" disabled selected>Choose a drink</option> <option value="coffee">Coffee</option> <option value="tea">Tea</option> <option value="milk">Milk</option> </select> </body> </html>
样式化 HTML 表单字段,主要是 <select> 字段与 CSS 一直有点复杂。
以特定方式更改 <select> 表单字段通常是无法管理的。
为此,许多正在用由 HTML 和 CSS 提供支持的定制解决方案替换 <select> 元素。
日期:2020-06-02 22:15:02 来源:oir作者:oir