在Web表單中,有些表單元素(如輸入框、文本域等)有“可讀寫”和“只讀”這2種狀態。默認情況下,這些表單元素都處在“可讀寫”狀態。
在CSS3中,我們可以使用:read-write選擇器和:read-only選擇器來分別設置表單元素的“可讀寫”與“只讀”這兩種狀態的CSS樣式。
舉例:
在線測試
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>CSS3 :read-write與:read-only選擇器</title>
<style type="text/css">
input[type="text"]:read-write
{
outline:1px solid #63E3FF;
}
input[type="text"]:read-only
{
background-color:#EEEEEE;
}
</style>
</head>
<body>
<form>
<p><label for="text1">讀寫:</label><input type="text" name="text1"/></p>
<p><label for="text2">只讀:</label><input type="text" name="text2" readonly="readonly"/></p>
</form>
</body>
</html>
在浏覽器預覽效果如下:
分析:
這裡使用“:read-write選擇器”為“可讀寫”狀態的文本框使用outline屬性添加一個外輪廓線,然後使用“:read-only選擇器”為“只讀”狀態的文本框改變背景顏色為灰色。
:read-only 選擇器支持 Chrome, Safari 和 Opera。Firefox 和 Internet Explorer 不支持 :read-only 選擇器。Firefox 支持 :-moz-read-only 選擇器作為替代方案。