详解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 相关文章推荐
css3之UI元素状态伪类选择器实例演示
Aug 11 HTML / CSS
纯css3实现鼠标经过图片显示描述的动画效果
Sep 01 HTML / CSS
详解rem 适配布局
Oct 31 HTML / CSS
html5拖曳操作 HTML5实现网页元素的拖放操作
Jan 02 HTML / CSS
突袭HTML5之Javascript API扩展5—其他扩展(应用缓存/服务端消息/桌面通知)
Jan 31 HTML / CSS
基于HTML5 Canvas:字符串,路径,背景,图片的详解
May 09 HTML / CSS
在HTML5 Canvas中放入图片和保存为图片的方法
May 03 HTML / CSS
使用canvas绘制贝塞尔曲线
Dec 17 HTML / CSS
详解移动端Html5页面中1px边框的几种解决方法
Jul 24 HTML / CSS
canvas绘制圆角头像的实现方法
Jan 17 HTML / CSS
H5最强接口之canvas实现动态图形功能
May 31 HTML / CSS
关于canvas绘制模糊问题的解决方法
Sep 24 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
PHP实时显示输出
2008/10/02 PHP
PHP获取用户客户端真实IP的解决方案
2016/10/10 PHP
php 与 nginx 的处理方式及nginx与php-fpm通信的两种方式
2018/09/28 PHP
使用javascript访问XML数据的实例
2006/12/27 Javascript
用jQuery实现检测浏览器及版本的脚本代码
2008/01/22 Javascript
javascript 有趣而诡异的数组
2009/04/06 Javascript
Juqery Html(),append()等方法的Bug解决方法
2010/12/13 Javascript
JS 有趣的eval优化输入验证实例代码
2013/09/22 Javascript
一个JavaScript的求爱小特效
2014/05/09 Javascript
jQuery中on绑定事件后引发的事件冒泡问题如何解决
2016/05/25 Javascript
深入理解vue $refs的基本用法
2017/07/13 Javascript
jqueryUI tab标签页代码分享
2017/10/09 jQuery
React/Redux应用使用Async/Await的方法
2017/11/16 Javascript
Vue 组件传值几种常用方法【总结】
2018/05/28 Javascript
vue表单中遍历表单操作按钮的显示隐藏示例
2019/10/30 Javascript
小程序中手机号识别的示例
2020/12/14 Javascript
python读写文件操作示例程序
2013/12/02 Python
用Python中的字典来处理索引统计的方法
2015/05/05 Python
python连接mysql实例分享
2016/10/09 Python
Python冲顶大会 快来答题!
2018/01/17 Python
利用python的socket发送http(s)请求方法示例
2018/05/07 Python
Python subprocess库的使用详解
2018/10/26 Python
Python通过for循环理解迭代器和生成器实例详解
2019/02/16 Python
Python3字符串encode与decode的讲解
2019/04/02 Python
python 两种方法删除空文件夹
2020/09/29 Python
用HTML5实现鼠标滚轮事件放大缩小图片的功能
2015/06/25 HTML / CSS
Veronica Beard官网:在酷、经典和别致之间找到了平衡
2018/01/11 全球购物
语文教学感言
2014/02/06 职场文书
酒店大堂副理的职责范文
2014/02/13 职场文书
ktv好的活动方案
2014/08/15 职场文书
新闻人物通讯稿
2014/10/09 职场文书
幼儿园五一劳动节活动总结
2015/02/09 职场文书
辞职信格式模板
2015/02/27 职场文书
少先队入队仪式主持词
2015/07/04 职场文书
PHP判断是否是json字符串
2021/04/01 PHP
在windows server 2012 r2中安装mysql的详细步骤
2022/07/23 Servers