纯 CSS 简单实现图片自适应水平垂直居中

2018-09-13    来源:SEO研究协会网

容器云强势上线!快速搭建集群,上万Linux镜像随意使用

纯 CSS 简单实现图片自适应水平垂直居中


本方法适用图片尺寸不一,且需要根据页面大小实现自适应等比缩放的情况;

之前一直用的是背景图的方式来实现这个效果,可以这样做的一个弊端是不利于SEO 的优化,所以决定换种方式写,综合网上搜出来的文章,写了这个教程,供新手学习使用。

实现样式:

纯 CSS 简单实现图片自适应水平垂直居中

demo1


先上代码:

HTML结构

<div class="wide">

<div class="img-wrap">

<div>

<img src="./test_img.jpg" />

</div>

</div>

<p class="goods-name">商品名称</p>

</div>

CSS样式

.wide {

width: 60%;

height: auto;

margin: 0 auto;

border: 1px solid #f2f2f2;

}

.wide .goods-name {

width: 100%;

height: 28px;

font-size: 14px;

padding: 0 10px;

box-sizing: border-box;

background-color: #fff;

}

.img-wrap { /*重点从这里开始*/

width: 100%;

height: 0;

padding-bottom: 60%;

overflow: hidden;

position: relative;

background-color: lightgray;

}

.img-wrap > div {

width: 100%;

height: 100%;

position: absolute;

display: flex;

align-items: center;

justify-content: center;

}

.img-wrap > div img {

width: auto;

height: auto;

max-width: 100%;

max-height: 100%;

}

简要说明:

1、.img-wrap 的 padding百分比值是相对于宽度的,这样我们就可以按照图片的比例来设置高度啦!height=0,padding-bottom=100% 正好是一个正方形(这里设置为60%);设置相对定位是为了 能够使子元素 基于它设置宽高(这样padding的值会计算在内,不然子元素的高度设置百分比时只会是我们写的‘height: 0’);

2、图片宽高 { width: auto; height: auto; max-width: 100%; max-height: 100%; } 这样图片可以自适应按父元素宽高等比例显示;

3、至此图片自适应就写好了,下面就是居中;

4、居中的方法很多;我这里用了flex布局,很容易就可以实现,如果要兼容IE和多版本浏览器请用其它居中方法实现;

补充:在设置图片时,可以把宽、高都设置成100%,然后使用CSS比较新的属性 object-fit 来实现图片按比例自适应居中显示。


本文仅代表作者个人观点,不代表SEO研究协会网官方发声,对观点有疑义请先联系作者本人进行修改,若内容非法请联系平台管理员,邮箱cxb5918@163.com。更多相关资讯,请到SEO研究协会网www.west.cn学习互联网营销技术请到巨推学院www.jutuiedu.com。

标签: isp seo 代码 互联网 学习互联网

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点!
本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。

上一篇:SEO站长是如何玩转微信公众号的?

下一篇:SEO优化知识篇——网站架构的影响