目录
如何在具有灵活高度的 Div 中垂直对齐图像
首页 web前端 css教程 如何在响应大小的 Div 中垂直居中图像?

如何在响应大小的 Div 中垂直居中图像?

Jan 03, 2025 pm 10:36 PM

How to Vertically Center an Image Within a Responsively-Sized Div?

如何在具有灵活高度的 Div 中垂直对齐图像

问题:

您有一个 div 容器,根据宽度变化按比例调整的响应高度。在这个容器中,您有一个具有不同高度的图像。您的挑战是垂直对齐容器中间的图像,无论其高度如何。

解决方案:

为了在这个响应式环境中实现垂直对齐,我们引入一种创新方法,涉及在图像旁边放置内联元素。

垂直对齐:

  1. 伪元素创建: 在 .img-container(托管图像)中,我们直接创建一个块级(伪)元素
  2. 高度调整: 该伪元素展开Vertical 消耗所有可用高度,强制 100% 高度匹配容器的高度。
  3. 元素的垂直对齐方式: 伪元素和图像都获得 Vertical-align: middle;样式,确保行内正确对齐。
  4. 字体大小删除:要删除这些元素之间的任何空白,我们设置 font-size: 0;

这种方法的好处:

  • 动态容器尺寸
  • 自动图像对齐,无需明确的高度规范
  • 对齐其他元素的多功能性,例如具有可变内容的 div(调整font-size 返回显示文本)

响应式容器:

为了使容器的高度与其宽度灵活,我们在填充上使用百分比值 - top 属性:

  • 100% padding-top:创建一个高度相等的正方形,宽度
  • 较高的百分比值(例如,150% 或 200%):高度是宽度的较大百分比

此填充技术也可以应用于子 div 或 CSS伪元素。

内容放置:

Padding-top 在容器内内容的上方和/或下方创建过多的空间。为了解决这个问题,我们将内容包含在包装元素中:

  • 绝对定位:从正常文档流中删除包装,使其填充容器的整个空间。
  • 顶部、right、bottom 和 left 属性:展开包装器以覆盖容器的

最终实现:

结合这些技术,我们实现了我们的目标:

<div class="responsive-container">
  <div class="dummy"></div>
  <div class="img-container">
    <img src="image.jpg" alt="Image">
  </div>
</div>
登录后复制
.responsive-container {
  width: 60%;
  height: 300px;  /* Example height for demo purposes */
  position: relative;
}

.img-container {
  text-align: center;
  font: 0/0 a;
}

.img-container:before {
  content: ' ';
  display: inline-block;
  vertical-align: middle;
  height: 100%;
}

.img-container img {
  vertical-align: middle;
  display: inline-block;
  max-height: 100%;  /* Optional: Ensures image stays within container */
  max-width: 100%;   /* Optional: Ensures image stays within container */
}
登录后复制

示范:

【垂直对齐响应式 Div 中的图像](https://codepen.io/cristianorocha/pen/dywbQMV)

以上是如何在响应大小的 Div 中垂直居中图像?的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

热门话题

Java教程
1664
14
CakePHP 教程
1423
52
Laravel 教程
1317
25
PHP教程
1268
29
C# 教程
1243
24
Google字体可变字体 Google字体可变字体 Apr 09, 2025 am 10:42 AM

我看到Google字体推出了新设计(Tweet)。与上一次大型重新设计相比,这感觉更加迭代。我几乎无法分辨出区别

如何使用HTML,CSS和JavaScript创建动画倒计时计时器 如何使用HTML,CSS和JavaScript创建动画倒计时计时器 Apr 11, 2025 am 11:29 AM

您是否曾经在项目上需要一个倒计时计时器?对于这样的东西,可以自然访问插件,但实际上更多

HTML数据属性指南 HTML数据属性指南 Apr 11, 2025 am 11:50 AM

您想了解的有关HTML,CSS和JavaScript中数据属性的所有信息。

使Sass更快的概念证明 使Sass更快的概念证明 Apr 16, 2025 am 10:38 AM

在一个新项目开始时,Sass汇编发生在眼睛的眨眼中。感觉很棒,尤其是当它与browsersync配对时,它重新加载

我们如何创建一个在SVG中生成格子呢模式的静态站点 我们如何创建一个在SVG中生成格子呢模式的静态站点 Apr 09, 2025 am 11:29 AM

格子呢是一块图案布,通常与苏格兰有关,尤其是他们时尚的苏格兰语。在Tar​​tanify.com上,我们收集了5,000多个格子呢

如何在WordPress主题中构建VUE组件 如何在WordPress主题中构建VUE组件 Apr 11, 2025 am 11:03 AM

内联式模板指令使我们能够将丰富的VUE组件构建为对现有WordPress标记的逐步增强。

当您看上去时,CSS梯度变得更好 当您看上去时,CSS梯度变得更好 Apr 11, 2025 am 09:16 AM

我关注的一件事是Lea Verou&#039; s conic-Gradient()Polyfill的功能列表是最后一项:

静态表单提供商的比较 静态表单提供商的比较 Apr 16, 2025 am 11:20 AM

让我们尝试在这里造成一个术语:“静态表单提供商”。你带上html

See all articles