CSS :required伪类选择器用于匹配必须填写的表单元素。
必须填写的表单元素是指那些被添加required属性的表单元素。
可以被:required伪类选择器匹配的表单元素有:被添加required属性的<input>、<select>和<textarea>元素。
例如,下面的表单元素都可以被:required伪类选择器匹配:
<input type="name" required>
<input type="email" required>
<textarea name="name" id="message" cols="30" rows="10" required></textarea>
<select name="nm" id="sel" required>
    <!-- 选项 -->
</select>
而下面的表单元素则不可以被:required伪类选择器匹配:
<input type="text">
<input type="submit">
<textarea name="name" id="id" cols="30" rows="10"></textarea>
<select name="nm" id="sel">
    <!-- 选项 -->
</select>
示例代码
下面代码为类型为email且带有required属性的input元素设置样式:
input[type="email"]:required {
    border:2px solid tomato;
}
在线演示
下面的例子中使用:optional和:required伪类来设置表单元素的样式。
浏览器支持
所有的现代浏览器都支持:required伪类选择器,包括:Chrome10+, Firefox, Safari, Opera10+, Internet Explorer 10+ 以及 Android 和 iOS。
 
                                    
                                     
                                    
                                     
                                    
                                    