html - 如何在div下垂直对齐h3文本?
问题描述
在 ahref 我有 div 元素。该 div 具有背景图像,在 div 下我正在显示 h3 文本。
我希望 h3 文本垂直居中对齐,但我无法做到。请帮我。
下面是我的 html 和样式代码。
<html>
<head>
<style>
.promo-item {
height: 400px;
}
.promo-item h3 {
font-size: 40px;
text-align: center;
}
.item-1 {
background: url('images/mung_beans.jpg');
}
.item-2 {
background: url('images/coffee_beans_1.jpg');
}
.item-3 {
background: url('images/grapes.jpg');
}
.item-1,
.item-2,
.item-3 {
width: 33%;
background-size: cover;
background-position: 50% 50%;
float:left;
}
</style>
</head>
<body>
<div>
<a href="#">
<div class="promo-item item-1">
<h3>One</h3>
</div>
</a>
<a href="#">
<div class="promo-item item-2">
<h3>Two</h3>
</div>
</a>
<a href="#">
<div class="promo-item item-3">
<h3>Three</h3>
</div>
</a>
</div>
</body>
</html>
解决方案
使用flexbox并将align-items
andjustify-content
属性设置为center
.
.promo-item {
height: 400px;
}
.promo-item h3 {
font-size: 40px;
text-align: center;
}
.item-1 {
background: lightgrey;
}
.item-2 {
background: lightgrey;
}
.item-3 {
background: lightgrey;
}
.item-1,
.item-2,
.item-3 {
width: 33%;
background-size: cover;
background-position: 50% 50%;
float: left;
display: flex;
align-items: center;
justify-content:center;
}
<html>
<body>
<div>
<a href="#">
<div class="promo-item item-1">
<h3>One</h3>
</div>
</a>
<a href="#">
<div class="promo-item item-2">
<h3>Two</h3>
</div>
</a>
<a href="#">
<div class="promo-item item-3">
<h3>Three</h3>
</div>
</a>
</div>
</body>
</html>
推荐阅读
- powershell - Powershell脚本如何处理直接传递给模块的参数
- python - 热绘制曲线并将其转换为 numpy
- c# - 试图制作“火与冰的舞蹈”并且遇到矢量问题
- angular - 嗨,我在 Angular 中使用 ngx-microsoft-bot-framework。我如何将 QNA Maker 服务添加到 TS 文件中
- docker - 任务 ':website:buildDockerImage' 执行失败。使用 Apache Beam 的 gradlew 构建
- javascript - Vuex getter 未定义但状态出现在控制台中
- r - R Shiny 如何选择输入表单数据框列(反应式)
- python - 使用python将文件上传到s3时更改元数据
- node.js - 在 GET 请求中发送 base64 数据的问题
- parameters - SAS宏参数中的换行符丢失