html5 - css 選擇器not問題
問題描述
<!DOCTYPE html><html><head><style>.iSerror:not(.usermodel) input{ border:1px solid red}</style></head><body><p class='iSerror'> <input> <p class='usermodel'> <input></p></p></body></html>
結果 為什么usermodel下面的input border會變成紅色呢
問題解答
回答1:.iSerror:not(.usermodel) input{ border:1px solid red} 先解釋一下:.iSerror:not(.usermodel)這里只是排除了跟.iSerror的同級.usermodel,而你的結構中,.usermodel是.iSerror的子集,改成:.iSerror p:not(.usermodel) input{ border:1px solid red}試下
回答2:.iSerror:not(.usermodel) input{//這里的.iSerror:not(.usermodel), 指的是在擁有iSerror類的標簽,同時不具有.usermodel這個類 border:1px solid red}
.iSerror p:not(.usermodel) input{ border:1px solid red}//html<p class='iSerror'> <p>//這個就會變紅色<input> </p> <p class='usermodel'> <input> </p></p>回答3:
你是沒給.usermodel直接添加樣式 但是它自動繼承了父類 即.iSerror的樣式
回答4:這個根本就用不到:not()啊……
如果用emmet來寫的話,
<p class='iSerror'> <input> <p class='usermodel'><input> </p></p>
就是.iSerror>input+.usermodel>input。
所以嘞,找第一個<input>就用.iSerror>input;找第二個<input>用.usermodel>input就好啦。
相關文章:
1. android - Genymotion 微信閃退 not find plugin.location_google.GoogleProxyUI2. mac里的docker如何命令行開啟呢?3. android webview返回自動刷新4. objective-c - iOS開發使用什么對html進行代碼高亮5. angular.js - 關于ng-model和ng-bind的疑問6. html - 特殊樣式按鈕 點擊按下去要有凹下和彈起的效果7. angular.js - 在ionic下,利用javascript導入百度地圖,pc端可以顯示,移動端無法顯示8. javascript - 單個控件多個字段搜索9. javascript - npm安裝報錯 系統w7 求大神解答10. html5 - 微信瀏覽器視頻播放失敗
