如何在父div中排除特定的div

时间:2019-07-16 10:32:45

标签: css

我想知道如何将样式仅应用于特定的div,而不应用于所有div。 我的意思是<div class="parent">....</div>内的每个div都必须具有某种样式,除了带有class="exception"的div之外

 <div class="parent">
   <div class='one'>...</div>
   <div class='two'> ....</div>
   <div class="exception">..</div>
   <div class="one">....</div>
 </div>

div.parent:not('.exception'){
  margin-bottom: 2em;
}

除具有类例外的div之外,所有具有父类的div中的所有div必须具有属性margin-top: 2em

2 个答案:

答案 0 :(得分:1)

你很近。但是,选择器意味着您的样式将对.parentdiv class="parent">元素)生效。而是像这样定位子元素

.parent > div:not(.exception) {
  color: red;
}
<div class="parent">
  <div class='one'>...</div>
  <div class='two'> ....</div>
  <div class="exception">..</div>
  <div class="one">....</div>
</div>

答案 1 :(得分:1)

您快到了,但是您的选择器应该是:div.parent div:not(.exception)

div.parent > div:not(.exception) {
  margin-bottom: 2em;
}
<div class="parent">
  <div class='one'>...</div>
  <div class='two'> ....</div>
  <div class="exception">..</div>
  <div class="one">....</div>
</div>