Ответ 1
Сначала я неправильно понял вопрос, но, с другой стороны, я бы это интерпретировал как:
Элемент
html
игнорируетmin-height: 100%
.Почему это?
Ответ на вопрос "Почему" находится в соответствующей спецификации, мой упор:
мин-высота
...
Значение:
<length> | <percentage> | inherit
...
<percentage>
Определяет процент для определения используемого значения. Процент вычисляется относительно высоты генерируемого блока, содержащего блок. Если высота содержащего блока явно не указана (т.е. зависит от высоты содержимого), и этот элемент не является абсолютно позиционированным, процентное значение рассматривается как '0' (для 'min- height ') или ' none '(для' max-height ').
Вот почему вам нужно установить высоту для элемента html
для min-height
для работы с элементом body
. В качестве альтернативы вы можете полностью позиционировать элемент html, например:
html { border: 10px solid black }
body { border: 10px dashed red }
html { position: absolute; top: 0; bottom: 0; left: 0; right: 0; }
/* alternatively: html { min-height: 100%; height: 100%; } */
html { min-height: 100%; }
body { min-height: 100%; }
Смотрите демонстрацию position: absolute
или демонстрацию height: 100%
.
Спасибо @Alohci за то, что я исправил интерпретацию спецификации.