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. mysql - sql 中 group 和field 查询问题。2. javascript - vue 数据更新了。但是dom没有更新,,,,,如图3. html5 - 百度Ueditor代码高亮和代码段滚动条冲突是怎么回事?4. css3中translate(-50%,-50%)对 transform-origin的奇葩影响?5. css - 关于input标签disabled问题6. javascript - 静态页面引公共头尾文件,js怎么写吖?7. java基础,求解答。8. 老师,layui.css无法使用,路径都是按照视频照做的,是不是还有其他步骤需要做?9. 如何调整IDEA中直接运行java程序的日志输出级别?10. debian - docker依赖的aufs-tools源码哪里可以找到啊?