Я хочу отобразить некоторые div, содержащие изображение и два div с текстом в нем, в контейнере flexbox с фиксированной высотой.Эти элементы представляют треки с обложкой альбома, названием песни и именем исполнителя.
Примерно так:
<div class="flex-container">
<div class="track">
<img class="track--image" src="http://lorempixel.com/400/400/">
<div class="track--artist-name">Artist</div>
<div class="track--track-name">Song</div>
</div>
<div class="track">
.
.
.
</div>
CSS:
.flex-container {
display: flex;
width: 100%;
height: 100px;
background-color: lightblue;
}
.track {
border: 1px solid black;
text-align: center;
max-width: 9rem;
color: black;
}
.track--image {
width: 100%;
border-radius: 50%;
}
.track--name,
.track--artist-name {
width: 100%;
text-overflow: ellipsis;
white-space: nowrap;
overflow: hidden;
}
Проблема в том, чточто изображение имеет ширину 100%, чтобы поместиться в родительский элемент div.Но это также подразумевает, что он переполняет своего родителя.А также два div внутри track
div выталкиваются за пределы своих родителей.
Как предотвратить слишком большое изображение для его родительского div, чтобы изображение и два div помещались внутри родительского элемента??
Я также подготовил кодовую ручку, чтобы лучше описать проблему: https://codepen.io/anon/pen/YBQGRb
РЕДАКТИРОВАТЬ:
Мои ожидания выглядят примерно так:
Как вы можете видеть, светло-серый контейнер - это мой flex-контейнер, внутри которого я хочу получить мои треки.Изображение и эти два текста должны помещаться в пределах, даже если высота флекс-контейнера изменяется.