页面布局前端水平、垂直居中问题

前言

两年前工作时开的博客,一年前写了两篇博文,然后就到了现在才重拾起笔。原因有二,一是自觉技术不足,二曰懒。

  最近由于在项目中遇到需求为拖动列可调整列顺序的表格,最后找到一款基于JQuery名为DataTables的插件,但网上为之写使用方法的很少,质量也很差,所以就动了为之写一个较为全面的使用方法的文章,又由于最近项目工作繁忙,所以一周过去了还没有写,今天抽空写了这篇文章,至于那个插件则以后抽时间写。

这篇文章里的方法不多,但都是些常用的,足够解决问题了。

正文

水平垂直居中

1.给元素定位使之居中(利用定位和transform平移的那种方法就不需要写了)

为居中元素的父级添加以下样式:

原因:为元素设置absolute定位时需要为父级设置非static定位

position: relative;

为居中元素添加以下样式:

注意:不给居中元素设置宽高的话,该元素会与设置非static定位的父级(没有的话会是html元素)同宽高。

width: 40px;
height: 40px;
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
margin: auto;

我们可利用上面的定位方式让一个元素与浏览器页面显示区域同宽高,具体方法如下:

设置html元素宽高:

width: 100%;
height: 100%;

设置该元素样式如下(该元素与html元素之间的元素不要设置非static定位):

position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;

2.设置弹性布局使子元素居中

为居中元素父级设置以下样式:

width: 400px;
height: 400px;
display: flex;

为居中元素添加以下样式:

margin: auto;

 垂直居中

 利用行高居中

为居中元素父级设置以下样式:

此方法可为元素内文字和行元素设置垂直居中

line-height: 50px;

水平居中

 1.利用margin实现居中

为居中元素添加以下样式:

必须为居中元素设置宽

width: 200px;
margin: auto;

2.利用text-align样式居中

 为居中元素父级添加以下样式:

此方法可为元素内文字和行元素设置垂直居中

text-align: center;

 本文原创,转载请注明出处:https://www.cnblogs.com/zhangdongya/p/11238763.html 

猜你喜欢

转载自www.cnblogs.com/zhangdongya/p/11238763.html