2016-02-20 4 views

ответ

3

Ваш DIV не имеет никакого содержания, и даже если вы дали ему высоту она не имеет ни одного, так как его родитель не имеет высоту. Попробуйте добавить высоту к родителю, как:

.a { 
 
    background-color: #ff0000; 
 
    height: 30%; 
 
    width: 100%; 
 
} 
 
body, 
 
html { 
 
    height: 100%; 
 
}
<div class="a"> 
 
</div>

В качестве docs по высоте состояния:

Процент рассчитывается по отношению к высоте генерироваться короба, содержащий блок. Если высота содержащего блока не указывается явно (то есть, это зависит от содержимого height), и этот элемент не является абсолютно позиционированным, значение вычисляется автоматически. Процентная высота на корневом элементе относительна к исходному содержащему блоку.

0

.a { 
 
    background-color: #ff0000; 
 
    height: 30%; 
 
    width: 100%; 
 
    
} 
 
body { 
height: 100% 
}
<div class="a"> 
 
</div>

+0

Divs находятся на одном уровне блоков по умолчанию. И вы даже запустили свой собственный пример? Это пусто! – j08691

+0

Да, я знаю, что div не является уровнем блока, он встроенный блок – mohamedaissani

+0

Ум, о чем вы говорите? По умолчанию разделители являются блочными уровнями, и все же вы все равно блокируете отображение. – j08691