前端 - 誰來解釋下這兩個(gè) CSS selector 區(qū)別
問題描述
錯(cuò)誤代碼:
input { padding: 4px 0; // https://css-tricks.com/almanac/selectors/p/placeholder-shown/ &:focus:not(:placeholder-shown) + .input__clear, &.input--filled:focus + .input__clear { opacity: 1; }}
正確代碼:
input { padding: 4px 0; // https://css-tricks.com/almanac/selectors/p/placeholder-shown/ &:focus:not(:placeholder-shown) + .input__clear { opacity: 1; } /* !!! 不能和上面的合并成一行,會導(dǎo)致下面的選擇器無法匹配 */ &.input--filled:focus + .input__clear { opacity: 1; }}
demo 見https://jsfiddle.net/mLz7rajf/3/https://jsfiddle.net/mLz7rajf/5/正確情況應(yīng)該是在不支持:placeholder-shown的瀏覽器(比如Firefox, 或者將placeholder-shown,隨便改成一個(gè)無法識別的偽類),輸入內(nèi)容后顯示 Clear
問題解答
回答1:貌似是瀏覽器bug
相關(guān)文章:
1. html5 - 有可以一次性把所有 css外部樣式轉(zhuǎn)為html標(biāo)簽內(nèi)style=" "的方法嗎?2. javascript - iframe 為什么加載網(wǎng)頁的時(shí)候滾動條這樣顯示?3. javascript - 如何將一個(gè)div始終固定在某個(gè)位置;無論屏幕和分辨率怎么變化;div位置始終不變4. html - vue項(xiàng)目中用到了elementUI問題5. sql語句 - mysql中關(guān)聯(lián)表查詢問題6. javascript - 有什么比較好的網(wǎng)頁版shell前端組件?7. javascript - 這不是對象字面量函數(shù)嗎?為什么要new初始化?8. javascript - vscode alt+shift+f 格式化js代碼,通不過eslint的代碼風(fēng)格檢查怎么辦。。。9. javascript - 原生canvas中如何獲取到觸摸事件的canvas內(nèi)坐標(biāo)?10. javascript - [js]為什么畫布里不出現(xiàn)圖片呢?在線等
