#html #css #image
Вопрос:
как мне сделать такой контейнер?
Я попробовал эту кнопку, в подписи вверху и внизу есть пробелы
.container {
border: 2px solid black;
}
.container img {
display: block;
margin-left: auto;
margin-right: auto;
width: 65%;
}
.container div {
width: 100%;
border-bottom: 2px solid black;
padding-bottom: 1px;
}
<div class="container"><img src="https://i.stack.imgur.com/KTKb6.png"><div></div><p>caption here</p></div>
есть ли в любом случае возможность удалить пробелы?
Комментарии:
1. Что вы пробовали до сих пор? Где ты застрял? Обычно удаление «пробелов» кажется вполне возможным с помощью CSS
2.
p
имеет поля по умолчанию, исходящие из таблицы стилей агента пользователя, поэтому вам нужно будет явно их перезаписать. Но вы должны в первую очередь использовать правильные элементы, которые предоставляет HTML для подобных вещей — developer.mozilla.org/en-US/docs/Web/HTML/Element/figcaption3. Я использовал маржу сверху: 0; и маржу снизу: 0; теперь это работает так, как я хотел
Ответ №1:
Вы можете использовать элементы <figure>
и <figcaption>
для этого следующим образом (что , кстати, также является предпочтительным методом с точки зрения доступности, поскольку эти теги являются стандартом для изображений с подписями).:
.x {
width: 500px;
text-align: center;
border: 1px solid #555;
}
.x img {
vertical-align: top;
}
.x figcaption {
border-top: 1px solid #555
}
<figure class="x">
<img src="https://picsum.photos/300/200" />
<figcaption>This is the caption</figcaption>
</figure>
(Примечание: vertical-align: top;
на изображении не должно быть места над/под ним)
Ответ №2:
Это то, что вы ищете?
*{
box-sizing: border-box;
}
.container{
width: 50%;
border: 10px solid black;
justify-content: center;
flex-direction: column;
}
.image > img{
width: 100%;
vertical-align: middle;
}
.caption{
display: flex;
justify-content: center;
border-top: 10px solid black;
}
<div class="container">
<div class="image"><img src="https://cdn.pixabay.com/photo/2015/04/19/08/32/marguerite-729510__340.jpg" alt=""></div>
<div class="caption"><h2>CAPTION HERE</h2></div>
</div>