У меня есть HTML-страница с заголовком/контентом/нижним колонтитулом, которая использует модель flexbox и содержит тег <details>
. Мне нужно, чтобы информация о контенте использовала максимальную доступную высоту, а это означает, что когда в открытом состоянии его содержимое должно занимать все пространство в своем контейнере (за исключением резюме, конечно).Сделайте тег с тегами HTML5, чтобы получить максимальную доступную высоту
Вот мой HTML/CSS код (http://jsfiddle.net/rtojycvk/2/):
HTML:
<div class="wrapper">
<div class="header">Header</div>
<div class="main">
Some text before details
<details class="details" open>
<summary>Details summary</summary>
<div class="content">Details content</div>
</details>
</div>
<div class="footer">Footer</div>
</div>
CSS:
html, body {
height: 100%;
margin: 0; padding: 0;
}
.wrapper {
display: flex;
flex-direction: column;
width: 100%;
min-height: 100%;
}
.header {
height: 50px;
background-color: yellow;
flex: 0 0 auto;
}
.main {
background-color: cyan;
flex: 1;
display: flex;
flex-direction: column;
}
.footer {
height: 50px;
background-color: green;
flex: 0 0 auto;
}
.content {
background-color: blue;
color: white;
flex: 1;
}
.details {
background-color: red;
flex: 1;
display: flex;
flex-direction: column;
}
Как вы можете видеть, детали помечать себя принимает все доступное пространство, но не его содержание.
P.S. Мне нужно, чтобы это работало только в Chrome.
Попробуйте добавить .content {height: 100vh;} –
Он делает высоту содержимого равным высоте окна, что не то, что я хочу – Norfolc
«Мне нужно, чтобы содержимое деталей использовало максимальную доступную высоту». Он будет содержать информацию о содержимом, заполняющую контейнер итоговых данных. –