美文网首页
《小白HTML5成长之路30》怎样让任意块元素基于父容器居中

《小白HTML5成长之路30》怎样让任意块元素基于父容器居中

作者: 老炉传说 | 来源:发表于2017-12-26 07:42 被阅读0次

小白郁闷的找到老朱说道:“朱哥,我想让一个块容器在一个容器里面垂直居中怎么这么难啊!”

老朱:“你是怎么实现的?”

小白说:“比如一个容器的高度是400px,子容器的高度是300px,我就把子容器CSS上边距设置成50px。”

“那要是父容器高度发生变化你的子容器岂不是很麻烦”

小白郁闷的说道:“你可说吧!头疼的很!怎么才能轻松的设置垂直居中啊?”

老朱说:“如果一个容器只有一行文字和图片,我们可以设置容器的高度和line-height一致就可以保证文字和图片居中,但是多行图片,或者容器里面嵌套了其他块元素就很麻烦了。还有一种情况就像你刚刚两个div嵌套,子容器也是个块元素,垂直居中直接用CSS会很麻烦,正好今天想跟你说说怎么给jQuery添加扩展方法,索性咱就以这个为例子进行讨论吧!”

小白高兴的说道:“又有新知识学了,什么事给jQuery添加扩展方法呢?”

“我们使用$(选择器)生成的对象有很多默认jQuery方法,你应该知道吧?”

小白说道:“知道啊!获取和修改容器html内容的html()方法、获取和修改属性的attr()方法、修改元素css样式的css()方法、获取元素高度的height()方法、还有控制容器显示的show()方法……”

“停~!差不多了,这些都是jQuery自带的方法,假如我们想自己增加一个方法可以用$.fn添加。我现在给你写一个能够输出当前容器高度和父容器高度的方法你看看!”

“子容器和父容器的高度在CSS中都有过设定,因此我通过$.fn添加mid方法以后,再通过选择器找到sun容器就可以直接使用mid方法了。”

小白突然灵光一现,说道:“朱哥我知道怎么设置一个让块容器基于父容器垂直居中了,你稍等我一会,我再你的代码基础上改一下!”

也就两分钟的时间,小白就把代码拿到了老朱面前,“你看,我写好了!”

“现在我想让sun容器基于main垂直居中只需要使用一下$("#sun").mid()就可以实现了,以后父容器不管怎么变化,它都是基于父容器居中的。”

老朱说道:“如果有多行块容器,或者多行文本、图片怎么办?”

小白说道:“那就给他们外面再嵌套一个块容器就可以了么!对不对啊?”

“不错,通过给他们嵌套一个块容器,然后再让这个块容器基于父容器垂直居中就可以了!小白我相信你还能再写一个基于底部对齐的方法吧?”

小白自信的说道:“再这个方法上改一下就可以了,稍等~”

“嗯,不错,如果你发现以后经常会用到这两种居中方式,可以把他们放到一个js文件里面,以后用的时候把这个js文件引入,就可以直接使用mid和bottom方法了。”

“$.fn确实是个好东西!看来我以后得经常添加自己的方法了,哈哈,我去练习了~”


想学H5的朋友可以关注老炉,您的关注是我持续更新《小白HTML5成长之路》的动力!

相关文章

  • 《小白HTML5成长之路30》怎样让任意块元素基于父容器居中

    小白郁闷的找到老朱说道:“朱哥,我想让一个块容器在一个容器里面垂直居中怎么这么难啊!” 老朱:“你是怎么实现的?”...

  • [小结]css垂直居中方式小结

    文字垂直居中例如: 块元素垂直居中于父元素(也叫负边距居中,宽高都适用) 或者可以水平对齐 块元素(容器)水平居中

  • CSS 居中小结

    水平居中 行内或类行内元素 在块级父容器中让行内元素居中,只需使用 text-align: center; : 这...

  • CSS 盒模型

    vertical:middle 针对表格,垂直居中 针对行内元素,基于父容器的基线垂直居中 边距合并 外边距合并:...

  • Css布局总结

    text-align规定该容器内部的行内元素相对于父级如何对齐,只对行内以及行内块元素有效。 居中 居中:居中分为...

  • CSS常见样式2

    text-align: center的作用是什么,作用在什么元素上?能让什么元素水平居中 可以让在块级父容器中让行...

  • CSS居中

    水平居中 行内或类行内元素(比如文本和链接) 在块级父容器中让行内元素居中,只需使用text-align: cen...

  • CSS-居中总结

    1.块级元素水平居中 2.行内元素居中 3.行内或者块级元素垂直居中 父元素的高度尽量不要固定,让它自适应,只有在...

  • CSS(五)对齐方式(居中)

    一、水平居中 margin: auto;设置子容器margin属性,可使元素在父容器内水平居中 二、垂直居中 li...

  • 居中大法

    水平居中 行内元素水平居中给它的父级元素设置 块级元素水平居中给该元素设置margin值 子元素有浮动对父元素进行...

网友评论

      本文标题:《小白HTML5成长之路30》怎样让任意块元素基于父容器居中

      本文链接:https://www.haomeiwen.com/subject/dyaabxtx.html