CSS怎么实现垂直居中

  介绍

这篇文章主要介绍CSS怎么实现垂直居中,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

<强> 1,行高等于高度/只设行高

这种方法比较适合文字的居中,其核心是设置行高(行高)等于包裹他的盒子的高,或者不设高度只设行高,这种适合文字居中且高度固定的场景,使用起来比较方便也比较有用。

//html   & lt; div 类=癿iddle"祝辞555 & lt;/div>   ,//css   .middle {   ,,身高:50 px;   ,,行高:50 px;   背景:才能,红色;   }

 CSS怎么实现垂直居中

值得注意的是

如果是行内元素,因为其没有高度,需先把行内元素转换为行内块或者块元素。

<强> 2,vertical-align:中间

这种实现元素的居中需要配合父元素设有等于自身高度的行高,且此元素是行内块元素。只有三个条件都具备,才能实现垂直居中。代码如下:

//html   & lt; div 类=癿ain"祝辞   ,,& lt; div 类=癿iddle"祝辞& lt;/div>   & lt;/div>//css   .main  {   ,,宽度:200 px;   ,,身高:300 px;   ,,行高:300 px;   ,,背景:# dddddd;   }   .middle {   背景:才能,红色;   ,,宽度:200 px;   ,,身高:50 px;   ,,显示:inline-block;//或者显示:,inline-table;   ,,vertical-align:中间;   }

 CSS怎么实现垂直居中

需要注意的是这种方法需要一个固定的行高,且实现的居中其实是近似居中,并不是真正意义的居中。

<强> 3,绝对定位加负外边距

这种方法核心在于先设置需要居中的元素为绝对定位,在设置其上:50%;加上margin-top等于负的自身高度的一半来实现居中。好处是实现起来比较方便,且父元素的高度可以为百分比,也不用设行高。代码如下:

//html   & lt; div 类=癿ain"祝辞   & lt;才能div 类=癿iddle"祝辞& lt;/div>   & lt;/div>   ,,//css   .main  {   ,,宽度:60 px;   ,,身高:10%;   ,,背景:# dddddd;   位置:,才能相对;//父元素设为相对定位   }   .middle {   位置:才能,绝对的,//设为绝对定位   ,,:50%;//值最高为50%   ,,margin-top: -25%;//设margin-top为元素高度的一半   ,,宽度:60 px;   ,,身高:50%;   背景:才能,红色;   }

<强>  CSS怎么实现垂直居中

<强> 4,绝对定位加保证金:汽车

先上代码:

//html   & lt; div 类=癿ain"祝辞   & lt;才能div 类=癿iddle"祝辞& lt;/div>   & lt;/div>   ,,//css   .main  {   ,,宽度:60 px;   ,,身高:10%;   ,,背景:# dddddd;   位置:,才能相对;//父元素设为相对定位   }   .middle {   ,,宽度:30%;   ,,身高:50%;   位置:才能,绝对的,//设为绝对定位   ,,:0;   底才能:0;//顶部,底部设0即可,   ,,左:0;//如果左,右也设为0则可实现水平垂直都居中   ,,右:0;   保证金才能:汽车;   背景:才能,红色;   }

这种方法好处是不止可以实现垂直居中,还可以实现水平居中,坏处是在网络或性能不好的情况下会有盒子不直接定到位的情况,造成用户体验不好。

<强> 5,flex布局

flex布局可以很方便的实现垂直与水平居中,好处很多,在移动端使用比较广泛,坏处就是浏览器兼容性不好。代码如下:

//html   & lt; div 类=癿ain"祝辞   & lt;才能div 类=癿iddle"祝辞& lt;/div>   & lt;/div>   ,//css   .main  {   ,,宽度:60 px;   ,,身高:10%;   ,,背景:# dddddd;   ,,显示:flex;//设为flex   ,,justify-content:中心;//水平居中   ,,对齐项目:中心;//垂直居中   }   .middle {   ,,宽度:30%;   ,,身高:50%;   背景:才能,红色;   }

 CSS怎么实现垂直居中

以上是“CSS怎么实现垂直居中”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注行业资讯频道!

CSS怎么实现垂直居中