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. dockerfile - 为什么docker容器启动不了?2. debian - docker依赖的aufs-tools源码哪里可以找到啊?3. angular.js - angular内容过长展开收起效果4. 为什么我ping不通我的docker容器呢???5. angular.js使用$resource服务把数据存入mongodb的问题。6. docker - 如何修改运行中容器的配置7. android - Apk 中找不到r类文件8. javascript - 求帮助 , ATOM不显示界面!!!!9. java - logback可以生成文件,但是日志无法输出到文件内?10. java - xml 传输数据如何处理更好

网公网安备