详解HTML5中垂直上下居中的解决方案


Posted in HTML / CSS onDecember 20, 2017

在CSS中,则要吐槽一下,利用margin:0 auto;可以达到水平方向的居中,但是margin: auto 0则无法达到垂直方向的居中。

这里主要还是由于没有对父控件即控件本身进行正确的定位。直接看代码, 首先对父控件需要使用相对布局,之后对子控件需要使用绝对布局,并且利用top,和bottom属性,结合margin: auto 0;,则可以达到效果。

.container-vertical {
      position: relative;
      width: 100%;
      height: 200px;
      background: deepskyblue;
      margin-bottom: 20px;
}
        
.container-vertical-item {
    position: absolute;
    width: 130px;
    height: 80px;
    text-align: center;
            background: yellow;
        line-height: 80px;
    top: 0;
    bottom: 0;
    margin: auto 0;
}

详解HTML5中垂直上下居中的解决方案

垂直方向上居中.png

水平垂直方向居中

有了5.2的经验,我们可以尝试设置子控件的left和right,top,bottom属性都为0,并且margin: auto;四个方向上都是自动外边距。则可以达到这样的效果。其中需要注意的子控件需要必须是display: block; 属性。

看代码

.container-horization-vertical {
    position: relative;
    width: 100%;
    height: 200px;
    background: deepskyblue;
    margin-bottom: 20px;
}
        
.container-horization-vertical-item {
    position: absolute;
    width: 150px;
    height: 80px;
    background: yellow;
    line-height: 80px;
    text-align: center;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    margin: auto;
}

详解HTML5中垂直上下居中的解决方案

小结: 这种方案在解决一些不算复杂的页面布局时还是很不错的,可以适配任何界面以及几乎所有的浏览器。但对于十分复杂的页面可能会需要其他的解决方案,但是从这个思路出发也可以得到启示

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

HTML / CSS 相关文章推荐
一款超酷的js+css3实现的3D标签云特效兼容ie7/8/9
Nov 18 HTML / CSS
CSS3实现可关闭的下拉手风琴菜单效果
Aug 31 HTML / CSS
CSS3近阶段篇之酷炫的3D旋转透视
Apr 28 HTML / CSS
css3 transform及原生js实现鼠标拖动3D立方体旋转
Jun 20 HTML / CSS
CSS3 animation实现简易幻灯片轮播特效
Sep 27 HTML / CSS
html5 touch事件实现触屏页面上下滑动(一)
Mar 10 HTML / CSS
H5 canvas中width、height和style的宽高区别详解
Nov 02 HTML / CSS
HTML5所有标签汇总及标签意义解释
Mar 12 HTML / CSS
html5 postMessage解决跨域、跨窗口消息传递方案
Dec 20 HTML / CSS
Html分层的box-shadow效果的示例代码
Mar 30 HTML / CSS
HTML5页面音频自动播放的实现方式
Jun 21 HTML / CSS
CSS 伪元素::marker详解
Jun 26 HTML / CSS
HTML5混合开发二维码扫描以及调用本地摄像头
Dec 27 #HTML / CSS
HTML5实现Notification API桌面通知功能
Mar 02 #HTML / CSS
HTML5 canvas实现雪花飘落特效
Mar 08 #HTML / CSS
HTML5 用动画的表现形式装载图像
Mar 08 #HTML / CSS
HTML5离线缓存Manifest是什么
Mar 09 #HTML / CSS
html5 touch事件实现触屏页面上下滑动(一)
Mar 10 #HTML / CSS
html5 touch事件实现触屏页面上下滑动(二)
Mar 10 #HTML / CSS
You might like
ThinkPHP模板之变量输出、自定义函数与判断语句用法
2014/11/01 PHP
Swoole-1.7.22 版本已发布,修复PHP7相关问题
2015/12/31 PHP
PHP错误机制知识汇总
2016/03/24 PHP
使用php从身份证号中获取一系列线索(星座、生肖、生日等)
2016/05/11 PHP
PHP书写格式详解(必看)
2016/05/23 PHP
javascript innerHTML、outerHTML、innerText、outerText的区别
2008/11/24 Javascript
Extjs4中tree的拖拽功能(可以两棵树之间拖拽) 简单实例
2013/12/08 Javascript
jquery队列函数用法实例
2014/12/16 Javascript
JQuery中serialize()用法实例分析
2015/02/06 Javascript
JS日期加减,日期运算代码
2015/11/05 Javascript
JavaScript中函数表达式和函数声明及函数声明与函数表达式的不同
2015/11/15 Javascript
JS获取及验证开始结束日期的方法
2016/08/20 Javascript
js原生实现FastClick事件的实例
2016/11/20 Javascript
详解AngularJS ng-class样式切换
2017/06/27 Javascript
JS路由跳转的简单实现代码
2017/09/21 Javascript
微信小程序使用车牌号输入法的示例代码
2019/08/20 Javascript
axios 实现post请求时把对象obj数据转为formdata
2019/10/31 Javascript
[36:33]2018DOTA2亚洲邀请赛 4.3 突围赛 EG vs Newbee 第二场
2018/04/04 DOTA
Python科学计算包numpy用法实例详解
2018/02/08 Python
python中的turtle库函数简单使用教程
2018/07/23 Python
TensorFlow实现模型评估
2018/09/07 Python
python字典嵌套字典的情况下找到某个key的value详解
2019/07/10 Python
详解python播放音频的三种方法
2019/09/23 Python
python如何通过闭包实现计算器的功能
2020/02/22 Python
iphoneX 适配客户端H5页面的方法教程
2017/12/08 HTML / CSS
澳大利亚窗帘商店:Curtain Wonderland
2019/12/01 全球购物
物流仓储实习自我鉴定
2013/09/25 职场文书
千元咖啡店的创业计划书范文
2013/12/29 职场文书
四风问题自查报告剖析材料
2014/02/08 职场文书
经典演讲稿汇总
2014/05/19 职场文书
商超业务员岗位职责
2015/02/13 职场文书
2015年社区妇联工作总结
2015/04/21 职场文书
小学生读书笔记
2015/07/01 职场文书
Python移位密码、仿射变换解密实例代码
2021/06/27 Python
无线电通信名词解释
2022/02/18 无线电
CentOS MySql8 远程连接实战
2022/04/19 MySQL