欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  web前端

html中的水平居中和垂直居中的问题。(固定高度与高度不定)_html/css_WEB-ITnose

程序员文章站 2022-05-25 18:13:20
...
在布局的过程中,我们要对某些元素进行居中定位,相信,大家对水平居中都没有问题,就是利用

margin:0 auto;以及文本居中 text-align:center。

下面我想给大家说的是关于整体居中(水平居中和垂直居中),

在这里,我首先告诉大家我利用了绝对定位的办法,

我现在先给大家制作一个框来直接的观察,如下

其中外框与内框分别是边长为300px和100px的正方形。

我们要把内框居中。(此时,内框高度是固定的)

1 当高度固定时。

一般我们会直接这样进行代码操作,

position:absolute;

top:50%;

left:50%;

这样乍眼一看,没有任何问题,但在进行操作后,我们会发现

内框并没有居中,这种情况的产生在于,我们忽略了内框是一个形状体,并不是一条线。

解决这种问题,我们要利用margin负值,通过负值,将整体再进行移动,而移动的数值为边框的长度的一半。

代码如下:

position:absolute;

top:50% margin-top:-50px;

left:50% margin-left:-50px;

效果如下:

负值的利用可以让标签靠近父元素,通过这样我们就达到了居中的效果。

2 高度不定的情况下

其实两者的原理是一样的,不过是在高度不定时,我们无法选取高度的一半,只需将代码改变一部分:

position:absolute;

top:50% ;

left:50% ;

transform: translate( -50%, -50%);

这样,也完成了居中效果。

大家快去试试吧。