zoukankan      html  css  js  c++  java
  • css水平居中那点事

    昨晚深夜写了css垂直居中那点事,今晚该写他的兄弟篇:css水平居中那点事了。。…^^

    其实本来这两个可以连在一起写,可是为了不要搞混,为了让思路更清晰,最后决定还是分开来些比较好。。。这样以后也有利于自己重温~~

    一,text-align

    为什么要第一个写text-align呢?

    其实也没有为什么。。。。。(别打我)

    但text-align是一个很神奇的东西,在ie6中使用text-align会有惊喜

    text-align是文本居中的意思,是使一个块级元素的行内内容对齐,所以正常来说,text-align只对行内内容起作用,不会对块级内容起作用。

    但是ie是一个神奇的东西,比较任性。。。在IE6和IE7的混杂模式中,text-align:center可以使块级元素居中。。。很神奇有木有!但是在其他的浏览器中只能作用于行内元素上。

    二,margin

    在块级元素居中上,我认为使用margin:0 auto,会是一个比较理想的方法,推荐使用,这个办法我们平时也用得够多,就不详细说明了

    有的小伙伴会为了对齐元素或者多栏而使用float,但是在设置了float了之后想要居中,margin就没有用了,这时要使元素居中,可以使用负边距的办法或者是给float元素一个容器,再使用margin。

    三,使用负边距

    在css垂直居中那点事,有讲到使用负边距使块级元素垂直居中的问题,所以自然,使用负边距也可以使块级元素水平居中

    首先设置position:absolute,然后使元素像偏移50%:left:50%,最后再反向使用margin-left等于块级元素宽度的一半margin-left:-1/2height便可以使元素水平居中

    关于position:abs的位移参考元素我就不多说了,不明白请参考css垂直居中那点事。我觉的我还是讲的挺明白。。。哈哈哈

    四,使用伸缩盒(flexible-box)

    这也是上一篇讲过的办法,有点懒,我直接给方法

    首先需要给要居中的元素一个伸缩盒容器:-webkit-display:box然后设置box-pack:center就可以使元素水平居中了

    不明白的请自行搜索伸缩盒的基本知识,但是这个样式在手机端使用的比较多,在浏览器的兼容上面的兼容性不是很好。

    题外话:

    很神奇的一件事情,在水平居中的方法和垂直居中的方法一样都是4个,水平居中的办法还有很多,在以后如果还遇到其他水平的居中的办法会不定期更新此文章。

    本人前端菜鸟,缺陷免不了,还请各位前段大牛不喜勿喷^^

    本文为原创作品,未经允许不准私自转载,谢谢!

  • 相关阅读:
    驰骋工作流引擎-系统变量的引用
    驰骋工作流引擎-表单样本展示
    驰骋工作流引擎CCFLOW下载代码
    初识CSS
    初识HTML标签
    初识JDBC
    通过锁对象解决哲学家就餐问题
    MySQL基本用法
    LRU算法实现,HashMap与LinkedHashMap源码的部分总结
    Java简易实现记事本的打开与保存
  • 原文地址:https://www.cnblogs.com/Gary-Guoweihan/p/4731465.html
Copyright © 2011-2022 走看看