在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 選擇器作為替代方案。