纯CSS如何让图片以及DIV垂直居中显示

图片,也就是img标签,行内元素;div,块级元素。

有时候我们会纠结于如何让这两种元素在父容器DIV中垂直居中显示(当然 ,这里我们抛开表格布局不谈,因为表格可以让内容自动垂直居中)

  1. 对于图片,如下所示:

.container{
height:350px;
border:1px solid #DDDDDD;
text-align: center;
line-height:350px;
}
.container img{
vertical-align: middle;
max-height: 350px;
max-width:350px;
}
即可让它自动垂直居中了,至于个中原理,

text-align: center;
让子元素横向居中显示,这个大家都知道,

vertical-align: middle;
让行内元素自身纵向居中显示,但是有了这个属性就一定能垂直居中了吗?

答案是否定的,相信大多数童鞋都在这碰过壁了,认为明明设置了纵向居中,为什么不生效? 我们必须在父容器上加上

line-height:350px;
设置父容器的行高才行,这两个属性缺一不可。

  1. 对于div

对于div的居中,我之前一向用的

{
position:absolute;
left:50%;
top:50%;
margin-left:-100px;
margin-top:-50px;
height:100px;
width:200px;
}

这种方式来实现,然而最近我发现了另一种方式似乎更优雅一些
{
position:absolute;
margin:auto;
left:0;
top:0;
right:0;
bottom:0;
height:100px;
width:200px;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值