图片垂直居中的5种css方法
来源:互联网 发布:西安程序员大会 编辑:程序博客网 时间:2024/05/29 14:25
图片垂直居中的css方法
今天我要介绍的是采用css进行图片居中的5个方法。首先确定我们的HTML结构(若不特别说明,下面皆采用该HTML结构)
<div class="vertical-center"> <img src="1.jpg" alt="StarXY"></div>
1.此方法会在img标签前加上一个inline-block的span标签,并给两个标签都设置vertical-align: middle。 HTML代码更改为:
<div class="vertical-center"> <span></span><img src="1.jpg" alt="StarXY"> </div>
css代码为:
body { font-family: "Microsoft YaHei"; font-size: 14px; padding: 0; margin: 0; } .vertical-center { width: 200px; height: 200px; text-align: center; border: 1px solid #ff4500; } /* 使用 .vertical-center:before会有2px的像素差,原因不明 */ .vertical-center span{ display: inline-block; width: 0; height: 100%; font-size: 0; vertical-align: middle; } .vertical-center img { display: inline-block; vertical-align: middle; }
2.给img元素加上绝对定位,并设置margin负值。
body{ padding: 0; margin: 0; } .vertical-center{ position: relative; width: 200px; height: 200px; border: 1px solid #ff4500; } .vertical-center img{ position: absolute; left: 50%; top: 50%; width: 160px; height: 160px; margin: -80px 0 0 -80px; }
3.img元素绝对定位,并设置left, right, top, bottom为0。
body{ padding: 0; margin: 0; } .vertical-center{ position: relative; width: 200px; height: 200px; border: 1px solid #ff4500; } .vertical-center img{ position: absolute; left: 0; right: 0; top: 0; bottom: 0; margin: auto; }
4.div类型为table-cell,并设置vertical-align: middle
body{ padding: 0; margin: 0; } .vertical-center{ display: table-cell; width: 200px; height: 200px; text-align: center; vertical-align: middle; border: 1px solid #ff4500; }
5.对img使用css3属性tranform: translate(-50%, -50%)
body{ padding: 0; margin: 0; } .vertical-center{ width: 200px; height: 200px; border: 1px solid #ff4500; } .vertical-center img{ position: relative; left: 50%; top: 50%; transform: translate(-50%, -50%); }
最终效果图如下:
以上五种方法,性能各有优劣。第一种和最后一种性能最优,第二三四种因为采用了绝对定位或者table-cell对性能消耗较大,不建议采用。
0 0
- 图片垂直居中的5种css方法
- CSS Div图片垂直居中的方法
- CSS图片垂直居中方法
- css垂直居中的5中方法
- CSS垂直居中的几种方法
- css垂直居中的几种方法
- css垂直居中的六种方法
- CSS垂直居中网页布局实现的5种方法
- CSS实现垂直居中的5种方法
- CSS实现垂直居中的5种方法
- CSS垂直居中网页布局实现的5种方法
- CSS实现垂直居中的5种方法
- CSS实现垂直居中的5种方法
- CSS实现垂直居中的5种方法
- CSS实现垂直居中的5种方法
- CSS实现垂直居中的5种方法
- CSS实现垂直居中的5种方法
- CSS实现垂直居中的5种方法
- 【CUDA开发】CUDA的安装、Nvidia显卡型号及测试
- 学习笔记-20160909
- 第一本十二章上机练习3
- TQ210——S5PV210 uboot顶层mkconfig分析
- java中的null
- 图片垂直居中的5种css方法
- 安卓的框架架构
- (OK) Android - MPTCP - (mptcp-v4.1.25-6d0ba0f70770-ztg-alter-20160909.patch)
- 嵌入式操作系统的基本概念_读书笔记_1
- 第一本十二章上机3 菜单级联关系
- Linux中crond服务与crontab用法
- 对象如何持久化(用serialize)?
- 电路设计_软开关
- μc/osII 学习笔记 - 实时性