CSS自動輸入文本框是指當用戶在文本框輸入時,文本框會自動給出一些建議,并以自動完成的方式在用戶輸入時給出選擇建議。這在一定程度上提高了用戶的輸入效率,減少了輸入錯誤的概率。
input[type="text"] { width: 250px; padding: 10px; font-size: 16px; } datalist { display: none; } input[list]::-webkit-input-placeholder { color: #ccc; font-style: italic; } input[list]:focus::-webkit-input-placeholder { color: transparent; } input[list]:focus + datalist { display: block; } option { color: #888; font-style: italic; }
上述代碼實現了我們的自動輸入文本框。首先,我們定義了文本框的樣式,包括寬度、內邊距和字體大小等。接下來,我們定義了datalist元素,用于存放我們為文本框輸入提供的選項列表,而且它初始情況下是不可見的。
然后,我們定義了input[list]::-webkit-input-placeholder偽類,當用戶輸入時,它可以自動幫助我們變換placeholder文字顏色以及是否可見來直觀地提示用戶當前輸入狀態。用戶在輸入時,datalist元素就會根據用戶的輸入自動匹配出選項,如果有匹配項,就會顯示出來。
有意思的是,我們還自定義了option元素的樣式,這是datalist元素的子元素,用于顯示文本框中的選項。我們用顏色和字體樣式來將其與正常文本區分開來,也更加美觀。
最終,通過上述的代碼,我們就實現了一個簡單的CSS自動輸入文本框。這個組件可以用來替代原本需要JS來實現的功能,能夠更好地增強用戶的輸入體驗。