下面是最近学习css的一点经验拿来跟大家分享 一下,欢迎多多指教,一般来说,在 CSS 中要垂直居中,多数是在有高度的情况下,或者容器高度不定的情况下才用,看上去比较舒服,而且实现的方法也不少,不一定要拘泥于和 table 布局一样。基本上凡是 table 布局可以实现的,CSS 一定可以实现。CSS 可以实现的,table 未必能做到。
下面是几个列子:
一、单行内容的居中
只考虑单行是最简单的,无论是否给容器固定高度,只要给容器设置 line-height 和 height,并使两值相等,再加上 over-flow: hidden 就可以了
复制内容到剪贴板代码:
.middle-demo-1{
height: 4em;
line-height: 4em;
overflow: hidden;
}
优点:
1. 同时支持块级和内联极元素
2. 支持所有浏览器
缺点:
1. 只能显示一行
2. IE中不支持<img>等的居中
二、多行内容居中,且容器高度可变
也很简单,给出一致的 pad**-bottom 和 pad**-top 就行
复制内容到剪贴板代码:
.middle-demo-2{
pad**-top: 24px;
pad**-bottom: 24px;
}
优点:
1. 同时支持块级和内联极元素
2. 支持非文本内容
3. 支持所有浏览器
缺点:
容器不能固定高度
三、把容器当作表格单元
CSS 提供一系列diplay属性值,包括 display: table, display: table-row, display: table-cell 等,能把元素当作表格单元来显示。这是再加上 vertical-align: middle, 就和表格中的 valign="center" 一样了。
复制内容到剪贴板代码:
.middle-demo-3{
display: table-cell;
height: 300px;
vertical-align: middle;
}
优点:
不用说了吧,就是表格,效果和表格一模一样
缺点:
IE下无效
转载自:
偶要雷锋分享社区
Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=1953605
分享到:
相关推荐
DIV+CSS 图片垂直居中效果
CSS实现完美垂直居中 - 蓝色理想
css图片垂直居中方法
CSS实现垂直居中的5种方法
css实现垂直居中的5种方法,慢慢总结的哦
CSS解决未知高度的DIV垂直居中CSS解决未知高度的DIV垂直居中
DIV+CSS水平 垂直居中.docDIV+CSS水平垂直居中
CSS 实现盒子水平居中、垂直居中和水平垂直居中….docx
NULL 博文链接:https://ice-cream.iteye.com/blog/293997
NULL 博文链接:https://gucaihe.iteye.com/blog/1465144
在实际网页中,如何实现如何实现父容器高度固定,文字可能一行,两行或更多行的垂直居中对齐呢? 实现的关键是把文字当图片处理。 用一个span标签将所有的文字封装起来,设置文字与图片相同的display属性...
css不定宽高让盒子里的内容垂直水平居中.里面步骤都有,
css 多行文本垂直居中显示,兼容各大浏览器!
NULL 博文链接:https://zhouyao.iteye.com/blog/417432
在曾经的 淘宝UED 招聘 中有这样一道题目: “使用纯CSS实现+未知尺寸的图片(但高宽都小于200px)在200px的正方形容器中水平和垂直居中。” 当然出题并不是随意,而是有其现实的原因,垂直居中是淘宝工作中最常遇到的...
主要介绍了使用css实现div垂直居中的示例,需要的朋友可以参考下
div+css多行文字实现垂直居中,高度可自动适应
图片 CSS垂直居中图片 CSS垂直居中
为实现良好的兼容性,PC端实现垂直居中的方法一般是通过绝对定位,table-cell,负边距等方法。有了css3,针对移动端的垂直居中就更加多样化。 方法1:table-cell html结构: XML/HTML Code复制内容到剪贴板 box1>...