2016-02-13 2 views
1

Как создать вертикальный зазор между единственными соседними блоками, но не между родительскими элементами, используя только одну инструкцию css.css: как создать разрыв между вертикальными divs, используя только одну команду css

<div>BLOCK1</div> 
<div> 
<!-- vertical gap disabled --> 
<div>BLOCK2.1</div> 
<!-- vertical gap enabled --> 
<div>BLOCK2.2</div> 
<!-- vertical gap enabled --> 
<div>BLOCK2.3</div> 
<!-- vertical gap disabled --> 
</div> 
<div>BLOCK3</div> 

край дно (или рентабельность-топ) - неверный результат (вертикальный зазор между BLOCK2.3 и BLOCK3 для края дна или между block1 и BLOCK2.1 для разницы-топа)

ответ

2

вы можете использовать прямой селектор дочерних > см: https://www.w3.org/TR/selectors/#child-combinators

от вашего бита кода может быть использована таким образом:

body>div {margin:1em 0;}
<div>BLOCK1</div> 
 
<div> 
 
    <!-- vertical gap disabled --> 
 
    <div>BLOCK2.1</div> 
 
    <!-- vertical gap enabled --> 
 
    <div>BLOCK2.2</div> 
 
    <!-- vertical gap enabled --> 
 
    <div>BLOCK2.3</div> 
 
    <!-- vertical gap disabled --> 
 
</div> 
 
<div>BLOCK3</div>

+1

Очень умный, спасибо за обмен. Если бы не вы, я бы прошел длинный путь и добавил id к блоку 1 и 3 div, а затем добавил маржу с помощью CSS. –

+0

https://jsfiddle.net/Zhihar/gw8g85x5/1/ Какие изменения в коде я должен сделать? – Zhihar

+0

возможно https://jsfiddle.net/gw8g85x5/2/ –

 Смежные вопросы

  • Нет связанных вопросов^_^