Невозможно отправить второй элемент на следующую строку на гибком дисплее

Я работаю над этой демонстрацией. Почему я не могу отправить p на вторую строку гибкого содержимого?

body,
html {
  height: 100%;
  width: 100%
}

div {
  width: 100%;
  height: 100%;
  display: -webkit-flex;
  -webkit-align-items: center;
  display: flex;
  align-items: center;
}
<div>
  <h1>Line One</h1>
  <br />
  <p>Line Two</p>
</div>
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Введение в CSS
Введение в CSS
CSS является неотъемлемой частью трех основных составляющих front-end веб-разработки.
Как выровнять Div по центру?
Как выровнять Div по центру?
Чтобы выровнять элемент <div>по горизонтали и вертикали с помощью CSS, можно использовать комбинацию свойств и значений CSS. Вот несколько методов,...
Навигация по приложениям React: Исчерпывающее руководство по React Router
Навигация по приложениям React: Исчерпывающее руководство по React Router
React Router стала незаменимой библиотекой для создания одностраничных приложений с навигацией в React. В этой статье блога мы подробно рассмотрим...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
CSS: FlexBox
CSS: FlexBox
Ранее разработчики использовали макеты с помощью Position и Float. После появления flexbox сценарий полностью изменился.
0
0
39
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Вы должны установить pwidth на 100% и установить его родительский flex-wrap: wrap, иначе h1 и p сожмутся, чтобы соответствовать.

body,
html {
  height: 100%;
  width: 100%
}

div {
  width: 100%;
  height: 100%;
  display: -webkit-flex;
  -webkit-align-items: center;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}

p {
  width: 100%;
}
<div>
  <h1>Line One</h1>
  <p>Line Two</p>
</div>

Вы также можете создать .breaker с width: 100% и display: block:

body,
html {
  height: 100%;
  width: 100%
}

.wrapper {
  width: 100%;
  height: 100%;
  display: -webkit-flex;
  -webkit-align-items: center;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}

.breaker {
  width: 100%;
  height: 0;
  display: block;
} 
<div class = "wrapper">
  <h1>Line One</h1>
  <div class = "breaker"></div>
  <p>Line Two</p>
</div>
Ответ принят как подходящий

добавить направление гибкости: столбец; в родительском div

Другие вопросы по теме