怎么在CSS中使用inline-block实现居中

怎么在CSS中使用inline-block实现居中?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

我们拥有十载网页设计和网站建设经验,从网站策划到网站制作,我们的网页设计师为您提供的解决方案。为企业提供成都网站设计、网站建设、外贸网站建设、微信开发、微信小程序开发手机网站制作设计H5建站、等业务。无论您有什么样的网站设计或者设计方案要求,我们都将富于创造性的提供专业设计服务并满足您的需求。

迫切需要的方法:inline-block法居中。基本方法是使用 display: inline-block, vertical-align: middle样式和伪元素让内容块在容器中居中。我的实现用到了几个在其他地方见不到的新技巧解决了一些问题。

内容区声明的宽度不能大于容器的100% 减去0.25em的宽度。就像一段带有长文本的区域。不然,内容区域会被推到顶端,这就是使用:after伪类的原因。使用:before伪类则会让元素有100%的大小!
怎么在CSS中使用inline-block实现居中

如果内容块需要尽可能大地占用水平空间,可以为大容器加上max-width: 99%;样式,或者考虑浏览器和容器宽度的情况下使用max-width: calc(100% – 0.25em) 样式。

这种方法和table-cell的大多数好处相同,不过最初我放弃了这个方法,因为它更像是hack。不管这一点的话,浏览器支持很不错,而且也被证实是很流行的方法。

HTML:
 

XML/HTML Code复制内容到剪贴板

  1.   

  2.     

  3.       

  4.   

  

  •   

    CSS:
     

    CSS Code复制内容到剪贴板

    1. .Center-Container.is-Inline {    

    2.   text-align: center;   

    3.   overflow: auto;   

    4. }   

    5.     

    6. .Center-Container.is-Inline:after,   

    7. .is-Inline .Center-Block {   

    8.   display: inline-block;   

    9.   vertical-align: middle;   

    10. }   

    11.     

    12. .Center-Container.is-Inline:after {   

    13.   content: '';   

    14.   height: 100%;   

    15.   margin-left: -0.25em; /* To offset spacing. May vary by font */  

    16. }   

    17.     

    18. .is-Inline .Center-Block {   

    19.   max-width: 99%; /* Prevents issues with long content causes the content block to be pushed to the top */  

    20.   /* max-width: calc(100% - 0.25em) /* Only for IE9+ */  

    21. }  

    好处:

        内容高度可变
        内容溢出则能自动撑开父元素高度
        浏览器兼容性好,甚至可以调整支持IE7

    同时注意:

        需要额外容器
        依赖于margin-left: -0.25em的样式,做到水平居中,需要为不同的字体大小作调整
        内容区声明的宽度不能大于容器的100% 减去0.25em的宽度

    看完上述内容,你们掌握怎么在CSS中使用inline-block实现居中的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注创新互联行业资讯频道,感谢各位的阅读!


    网页标题:怎么在CSS中使用inline-block实现居中
    浏览地址:http://ybzwz.com/article/jdoces.html

    其他资讯