您好,登錄后才能下訂單哦!
今天小編就為大家帶來一篇focus選擇器在css中的作用作的文章。小編覺得挺不錯的,為此分享給大家做個參考。一起跟隨小編過來看看吧。
css :focus選擇器的簡單介紹
:focus是css的一個偽類選擇器,可以用來選取獲得焦點的元素,然后為這些獲得焦點的元素設置樣式。
只要是可以接收鍵盤事件或其他用戶輸入的元素都可以 :focus 選擇器,大多數情況下:focus選擇器都是被使用在鏈接和表單元素上的。
例如:用戶單擊一個input輸入框獲取焦點,然后這個input輸入框的邊框樣式就會發生改變,和其他的輸入框區別開來,表明已被選中。
一般情況下,瀏覽器都會自動在表單元素獲取焦點時給元素周圍添加輪廓,由瀏覽器添加的樣式是每個瀏覽器的默認樣式,并且通常情況下,每個瀏覽器之間的默認樣式看起來是不一樣。但為了頁面的整體美觀和瀏覽器的樣式兼容性,往往我們都需要修改獲得焦點時的元素樣式,把默認樣式替換為我們自己的樣式。
這個時候我們就可以使用css :focus選擇器來設置瀏覽器在獲得焦點時的的元素默認樣式。例:
input:focus{ outline:0; /* 去除瀏覽器默認樣式 */ border: 2px solid pink; }
效果圖:
說明:輪廓類似于邊框,但它們并不完全相同,我們需要通過outline屬性來設置它的樣式。例如:設置outline:0; 來去除輪廓。
我們還可以把css :focus選擇器使用在鏈接上,例:
a:focus { outline: 0; color:red; }
注:
當我們使用css :focus選擇器來鏈接樣式時,建議是在:link和:visited選擇器設置的樣式之后設置:focus樣式,否則:focus選擇器提供的樣式將被:link和:visited選擇器提供的樣式給覆蓋掉。
除了這三個偽類中,:hover和:active偽類也可以用來設置鏈接樣式,它們提供的樣式在 :focus的樣式之后出現。
上面提到的順序,即:link,visited,focus,hover,active的順序是首選的,這樣可以確保在必要時應用每個偽類的樣式,并且不會被另一個偽類的樣式覆蓋。例:
a:link { color: #0099cc; } a:visited { color: grey; } a:focus { background-color: black; color: white; } a:hover { border-bottom: 1px solid #0099cc; } a:active { background-color: #0099cc; color: white; }
css :focus選擇器的示例:
在聚焦輸入和文本區域字段的背景顏色轉換為淺黃色突出顯示,帶有淺紅色邊框。
html代碼:
<div class="container"> <div class="form"> <input type="text" placeholder="背景會變黃"> <input type="text" placeholder="得到一個紅色的邊框"> <textarea name="area" id="area" cols="30" rows="10">聚焦這里,textarea文本框</textarea> <button>按鈕</button> </div> </div>
css代碼
.container { margin: 40px auto; max-width: 400px; } input, textarea, button { padding: .5em; display: block; width: 100%; margin-bottom: .5em; } a:link { color: deepPink; } /* :focus styles */ a:focus, input:focus, textarea:focus, button:focus { /* override default browser outline */ outline: 0; /* apply other styles */ outline: 2px solid #F47E58; border-radius: 5px; } input:focus, textarea:focus { background-color: #FFFF66; }
效果圖:
我們可以使用鍵盤的“tab”按鈕來切換輸入框,或單擊input和textarea字段來獲得焦點,查看一下:focus樣式。
瀏覽器支持
:focus偽類選擇器被Firefox,Safari,Opera或7+,IE瀏覽器7+,以及Android和iOS等所有主流瀏覽器的支持。
看完上訴內容,你們對focus選擇器在css中的作用大概了解了嗎?如果想了解更多相關文章內容,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。