css 图片居中放大,不同比例图片居中缩放显示的三种方法

效果

dbbe02100b14d2a84f6cf7cccaca53fe.png

ab5da6383ee3f50d19539c809957959a.png

方法一动态给img标签src属性赋值来达到传入不同比例的图片时始终等比例缩放显示,兼容性最好

HTML代码

...

复制代码

CSS代码

.img-box{

/*限定图片盒子宽高*/

width:500px;

height:500px;

}

img{

width:auto;

height:auto;

max-width:100%;

max-height:100%;

/*不定宽高的图片居中显示*/

position: relative;

top:50%;

left:50%;

transform:translate(-50%,-50%)

}复制代码

方法二动态设置图片展示区域的背景图background-image来达到不同比例图片时始终等比例缩放显示

HTML代码

CSS代码

.img-box{

/*限定宽高*/

width: 500px;

height: 500px;

background-image: url('...');

/*水平垂直居中*/

background-repeat: no-repeat;

background-size: contain;

background-position: center;}复制代码

方法三直接赋值img标签的src属性即可,最简单但低版本兼容性差

HTML代码

...复制代码

CSS代码

img{

/*限定宽高*/

width:500px

height:500px;

object-fit:contain

}复制代码

object-fit这个属性决定了像img、video等替换元素的内容应该如何使用他的宽度和高度来填充其容器。

CSS背景图片居中可以使用多种方法,以下是几种常见的方法: 1. **`background-position: center`**: 对于元素的整个背景区域设置为居中,你可以直接将 `background-position` 属性设为 `center`,例如: ```css .centered-background { background-image: url('your-image.jpg'); background-position: center; background-repeat: no-repeat; /* 防止背景重复 */ } ``` 2. **`background-position: center center`**: 如果你想让背景图像在水平和垂直方向上都居中,可以分别指定 `center`。 3. **`.background-size: cover`** 或 `.background-size: contain`**: 这两种方法用于保持图像原始比例的同时填充容器。如果想完全覆盖容器,用 `cover`;若保持原图不失真且只填充满容器,用 `contain`。 4. **Flexbox 和 Grid** (适用于块级元素): 对于 flex 容器或 grid 容器内的项目,可以直接通过布局属性使其内部背景图片居中,如: ```css .flex-item { display: flex; justify-content: center; align-items: center; } .grid-item { display: grid; place-items: center; } ``` 5. **绝对定位 (position: absolute) + 相对定位 (position: relative)**: 如果元素有相对定位的父元素,可以设置其背景图片为绝对定位,并设置 `top`, `right`, `bottom`, `left` 为 `0` 来实现居中: ```css .parent { position: relative; } .absolute-child { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); background-image: url('your-image.jpg'); } ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值