当前位置: 首页 > Web前端 > HTML

了解如何实现css的水平居中和垂直居中

时间:2023-04-02 14:25:30 HTML

CSS居中是前端工程师经常面临的问题,也是基本功之一。今天总结一下以往使用的方法,包括水平居中、垂直居中和横竖居中方案。本文对一些类似的方案进行了分类总结,结果如下。如果后面有新的计划,会陆续补充。DEMO

水平居中1.margin:自动块(block)元素水平居中,子元素边距:自动。<样式>.element_item1{边距:0自动;}玉炉香,红蜡泪,画堂秋思局部照。眉青瘦两鬓,夜长枕冷。梧桐树,半夜的雨,不诉情苦。一叶一叶,一声响,空旷的脚步滴入光中。
查看DEMO2.text-align:center(inline-block,inline)元素水平居中。父元素文本对齐:居中。
曾经以为真爱会永远留在我们心里,
曾经以为会是天长地久所有的爱。
但终究,岁月会老去,人心也会消逝。
走着就忘了往事,想着就走错了地方。
总有一天我们还是要面对分离,
面对情深情浅的现实;
总有一天我们会分道扬镳,
成为最熟悉的陌生人。
查看DEMO垂直居中3.height+line-height单行文字垂直居中,父元素高度值===line-height值。<样式>.element_box3{高度:300px;行高:300px;}玉炉香,红蜡泪,画堂秋思局部照。查看DEMO4。幽灵元素如果一个父元素中有两个inline-block子元素,并且这两个子元素vertical-align:middle,那么这两个元素是垂直居中的。扩展一下思路,如果其中一个子元素的高度与父元素的高度相同,那么这两个子元素在父元素中垂直居中。根据这个思路,实现元素垂直居中:为父元素设置一个伪元素,显示:inline-block;宽度:0;height:100%,并设置为在页面上不可见。我们称这种伪元素为“幽灵元素”,可以通过为幽灵元素和子元素设置vertical-align:middle来实现垂直居中。该走的终究要走,该走的终究要走,没有敷衍原因,剩下的只有那些没有保质期的承诺;流逝的幸福。查看DEMO注意:当子元素的宽度为100%时,会有一丝右侧空白水平和垂直居中5.Table-cell布局内联元素,单行和多行文本水平和垂直居中。曾经以为真爱会永远留在我们心里,我以为我会爱到永远。但终究,岁月会老去,人心也会消逝。走着走着就忘记了过去,思来想去就走错了地方。总有一天,我们还是要面对分离,面对情深情浅的现实;总有一天我们会分道扬镳,成为最熟悉的陌生人。查看DEMO6.flex布局块元素、行内元素、单行、多行文本水平和垂直居中。《童年.花草记忆》一念绽放,一念凋零。这山水世界很远,终究要自己走下去。人在旅途中,要不断地自我救赎。(桂花)查看DEMO7.grid珍惜来的,放下来的。人生是一段旅程,并不是每个人都会去同一个地方。路遇总是美好,离别后总是凄凉。不管喜怒哀乐,该走的还是要走,该来的终究会来。人生的旅途,多半是孤独的。懂得珍惜,来的就是美好;如果你愿意放手,放手就不是负担。对于过去,放它;当下,珍惜;对于未来,相信它是宽度和高度的一半。<样式>.element_item8{位置:相对;顶部:50%;左:50%;宽度:400px;高度:224px;边距顶部:-112px;左边距:-200px;}固定大小块级参见DEMO9.position+calc()元素,calc计算50%-元素宽度或高度的一半。<样式>.element_box9{位置:相对;}.element_item9{位置:绝对;顶部:计算(50%-75px);左:计算(50%-150px);宽度:300px;高度:150px;溢出:隐藏;}顺势而行,不要太疯狂,即使爬到坡顶,终究会下坡;
快走走累了,别太得意,脚总是有限的,不如放慢脚步,把短路走得更精彩;
走累了,别太过感叹,要懂得休息,疲惫过后,才会懂得坚强和珍惜;
走的时候不要太难过,人生没有死路,苦也无路可走是人生的阶梯,助你走出低谷和沼泽。查看DEMO10.position+margin:auto查看DEMO11.position+transform查看DEMO13.padding填充,常用于父元素大小不固定的场景。综上所述,居中实现方案有很多种,我常用的有:flexlayout,position+transform。上述水平和垂直居中方案中:方案8和方案9只适用于仅固定宽高的居中元素。