1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > CSS块元素水平垂直居中的实现技巧

CSS块元素水平垂直居中的实现技巧

时间:2023-03-13 09:26:20

相关推荐

CSS块元素水平垂直居中的实现技巧

针对之前遇到过的一些特殊样式的实现,我今天做个总结,目的有二:一是将这些方法记录下来,以便将来需要用到时查找使用。二为将这些大神们智慧的结晶发扬光大,让广大前端程序猿们能够少走弯路。此贴为更新帖,以后若有好的css样式技巧,小菜我会不定期更新。一、块元素水平垂直居中对于一个块元素的水平垂直居中,水平居中的方式不必多说,一般用margin:auto;等方法即可实现。而对于垂直居中,尽管有vertical-align:middle属性,但是由于其只适用于table标签中,而table标签效果不好控制的特点大家都懂。。。因此,我们一般常用的方法是:将子级元素设定inline-block属性,并将其行高属性:line-height的值设定为与父级元素相同的高度。代码如下html方面:<body><divclass="big"><divclass="small"></div></div></body>css方面:.big{width:500px;height:500px;border:1pxsolidred;position:relative;}.small{width:200px;/*自己元素宽高可任意设定*/height:200px;position:absolute;left:0px;top:0px;rightright:0px;bottombottom:0px;margin:auto;background-color:#cc9900;} 在上述代码中,子级元素的宽高是任意设定的。都可以实现此元素在父级元素中水平垂直居中显示。在父级元素中,我们用了position的relative属性。在子级元素中,我们将它的position属性设定为absolute后,将四个方向的值都设定为0px。并且让他的margin值自适应。从审查元素中我们可以发现,如此设定后,子级元素的margin区域会充满整个父级元素,并且左右margin值是相等的,上下margin值亦如此。但是这并不符合,当代码数值有冲突时,优先解析top值及left值的规律。因为究竟是什么原理,小菜也不得而知。。如果有大神知晓,还望不吝赐教。但是这不失为一种好的办法,希望大家活学活用。二、after伪类清浮动通常我们在对块元素设浮动以后,需要对其清浮动,以免布局混乱。常见的清浮动方法主要有两种:1)、在后面的子元素css中写"clear:both;"。2)在浮动元素的父级元素中写"overflow:hidden"。现在,我们可以用第三种方法,利用after伪类写一个浮动属性,这样只要有需要清楚浮动的地方,我们就给其父元素加上这样一个浮动属性就可以了。代码如下:

.clearfix:after{content:"";display:table;/*利用table不允许浮动的属性来清除浮动。也可以替换成"overflow:hidden;"*/clear:both;} 这种方法有个好处,即可以将其写入reset中,之后可以多次调用。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。