根据子元素的数量设置填充

时间:2016-06-29 10:48:01

标签: css css-selectors

我有一个DIV元素,可能包含1或2 Child DIVs

有没有办法说明1 Child element,那么填充应为15px,否则为5px

可能喜欢

<div class="container">
   <div><strike>7.00</strike></div>
   <div>5.00</div>
</div>

<div class="container">
   <div>7.00</div>
</div>

3 个答案:

答案 0 :(得分:1)

你可以在儿童中使用保证金来获得相同的效果:

.container div:only-child {
  margin: 15px;
}

div {
  border: solid 1px red;
}

div div {
  margin: 0 5px;
  border-color: green;
  background: #ccc;
}

div div:first-child {
  margin-top: 5px
}

div div:last-child {
  margin-bottom: 5px
}
<div class="container">
  <div><del>7.00</del></div>
  <div>5.00</div>
</div>


<div class="container">
  <div>7.00</div>
</div>

PS 使用不推荐使用的del代码strike

答案 1 :(得分:1)

不,没有。

CSS确实有一些复杂的quantity queries,但这些只会根据数字来设置 children 的样式。

由于没有Parent Selector

,因此(目前)无法根据子项数设置的样式

答案 2 :(得分:0)

基于这个原始线程的年代,我没有提供确切的解决方案,但是,CSS Tricks 将一篇很棒的文章放在一起,介绍了逻辑 CSS 样式。你可以find the article here