本文介绍: imgbackgroundimage实现图片高度根据宽度改变而改变。图片高度根据宽度进行自适应

imgbackgroundimage高度通过宽度适应

图片的高度根据宽度保持一致需要通过 paddingtop 来代替 height
注意: paddingtop通过父级的宽度保持一致,所以在使用时候必须要套一层父级的宽度。
如果要通过 标签实现将图片填充整个元素,并保持与原图宽高缩放比例一致,并根据宽高比例裁剪图片以完全展示居中显示可以使用 CSS 和一些技巧实现
首先,确保父元素具有相对定位position: relative;),然后使用绝对定位position: absolute;)来定位 元素,并设置其宽度和高度为100%以填充整个父元素

img 方式

html

<div style="width: 400px;height: 600px;">
  <div class="container"&gt;
  	<img src="path/to/image.jpg" alt="Image" class="background-image"&gt;
  </div&gt;
</div&gt;

css

.container {
  position: relative;
  width: 300px;
  padding-top: 100%; /* 用padding-top 表示 heightheight 会和父级width保持一致,也就是400px */
  overflow: hidden; /* 确保超出部分裁剪 */
}

.background-image {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  height: 100%;
  object-fit: cover; /* 新增,确保图片填充整个容器 */
}

在上面的示例中,.container指定了父元素的宽度和高度,并设置相对定位overflow: hidden; 以确保超出部分裁剪

.backgroundimage指定元素样式使用绝对定位top: 50%; left: 50%; transform: translate(-50%, -50%); 将其居中定位在父元素中心然后设置其宽度和高度为100%以填充整个父元素,并使用 object-fit: cover; 确保图片按比例缩放填充整个容器

这样设置后,无论图片的宽高例如何,图片都会被缩放填充整个容器,并且保持居中显示。如果图片的宽度大于高度,则会裁剪部分高度以确保高度完全展示;如果图片的高度大于宽度,则会裁剪部分宽度以确保宽度完全展示。

backgroundimage 方式

html

<div style="width: 400px;height: 600px;">
  <div class="background-image"></div>
</div>

css

.background-image {
  width: 300px;
  padding-top: 100%;
  background-image: url('path/to/image.jpg');
  background-size: cover;
  background-position: center;
}

在上面的示例中,.background-image 类指定元素的宽度和高度,并设置了背景图片的 URL。backgroundsize: cover 会将背景图片缩放填充整个元素,保持宽高比例。backgroundposition: center 则将背景图片居中显示

这样设置后,无论图片的宽高例如何,背景图片都会被缩放并完全填充元素,并且保持居中显示。如果图片的宽度大于高度,则会裁剪部分高度以确保高度完全展示;如果图片的高度大于宽度,则会裁剪部分宽度以确保宽度完全展示。

原文地址:https://blog.csdn.net/qq_43651168/article/details/131310735

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任

如若转载,请注明出处:http://www.7code.cn/show_31024.html

如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱suwngjj01@126.com进行投诉反馈,一经查实,立即删除

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注