`
ssxxjjii
  • 浏览: 935774 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

CSS中元素水平居中显示的方法

    博客分类:
  • css
 
阅读更多

http://www.downcodes.com/info/2009/06/12/20090612-3634.html

用CSS让元素居中显示并不是件很简单的事情。同样的CSS居中设置在不同浏览器中的表现也各有千秋。本文就介绍了在CSS中常见的几种让元素水平居中显示的方法。

  1.使用自动外边距实现居中

  CSS中首选的让元素水平居中的方法就是使用margin属性—将元素的margin-left和margin-right属性设置为auto即可。在实际使用中,我们可以为这些需要居中的元素创建一个起容器作用的div。需要特别注意的一点就是,必须为该容器指定宽度:

  CSS中对齐

  在大多数主流浏览器中,这种方法都非常有效,即使是Windows平台上的IE6,在其标准兼容模式(compliance mode)下也能够正常显示。但不幸的是,在更低版本的IE中,这种设置却并不能实现居中效果。所以若想在实际项目中使用这种方法,那么就要确保用户的IE浏览器版本不低于6.0。

  尽管在支持上不尽如人意,但大多数设计师都建议尽可能地使用这种方法。该方法也被认为是在各种用CSS实现元素水平居中方法中最正确、最合理的一种。

  2.使用text-align实现居中

  另一种实现元素居中的方法是使用text-align属性,将该属性值设置为center并应用到body元素上即可。这种做法是彻头彻尾的hack,但它却能兼容大多数浏览器,所以在某些情况下也自然必不可少。

  之所以说它是hack,是因为这种方法并没有将文本属性应用到文本上,而是应用到了作为容器的元素上。这也给我们带来了额外的工作。在创建好布局必须的div之后,我们要按照如下代码为body应用text-align属性:

  CSS中对齐

  之后会出现什么问题吗?body的所有子孙元素都会被居中显示。

  因此,我们就需要用再写一条规则,让其中的文本回到默认的居左对齐:

  CSS中对齐

  可以想象这条附加的规则将带来一些不便。另外,真正完全遵循标准的浏览器并不会改变容器的位置,而只会让其中的文字居中显示。

  3.组合使用自动外边距和文本对齐

  因为文本对齐居中方式有着良好的向下兼容性,且自动外边距方式也被大多数当代浏览器支持,所以很多设计师将二者组合起来使用,以期让居中效果得到最大限度的跨浏览器支持:

  CSS中对齐

  可是这始终是个hack,无论如何也算不上完美。我们还是需要为居中容器中的文本编写附加的规则,但至少在各个浏览器中看起来都不错。

  4.负外边距解决方案

  负外边距解决方案远不是仅仅为元素添加负外边距这么简单。这种方法需要同时使用绝对定位和负外边距两种技巧。

  下面是该方案的具体实现方法。首先,创建一个包含居中元素的容器,然后将其绝对定位于相对页面左边边缘50%的位置。这样,该容器的左外边距将从页面50%宽度的位置开始算起。

  然后,将容器的左外边距值设置为负的容器宽度的一半。这样即可将该容器固定在页面水平方向的中点。

  CSS中对齐

  虽然这并不是首选的解决方案,但也是个不错的方法,且适用性极广。

分享到:
评论

相关推荐

    CSS中元素水平居中显示的方法.pdf

    ...

    CSS中元素水平居中显示的方法.docx

    ...

    css3块元素居中

    这将使得块元素水平居中。 二、不定宽块元素居中 不定宽块元素可以通过以下三种方法实现居中: 1. 使用table标签 html代码: ``` 不定宽块元素 ``` css代码: ``` table { margin: 0 auto; } ``...

    CSS常见的让元素水平居中显示的方法

    让我们先来看一下CSS中常见的几种让元素水平居中显示的方法。 用CSS让元素居中显示并不是件很简单的事情—同样的合法CSS居中设置在不同浏览器中的表现行为却各有千秋。让我们先来看一下CSS中常见的几种让元素水平...

    css如何让浮动元素水平居中

    对于定宽的非浮动元素我们可以在CSS中用 margin:0 auto 进行水平居中,对于不定宽的浮动元素我们也有一个常用的技巧解决它的水平居中问题。解决水平居中问题有很多种方法,下面先给大家分享一下三种方法,希望能帮助...

    CSS常见的让元素水平居中显示方法.docx

    ...

    CSS常见的让元素水平居中显示方法.pdf

    ...

    CSS2.1如何让块元素垂直水平居中.rar

    资源内容为如何让已知宽高和未知宽高的div元素垂直水平居中,内容适合新手小白,细节方面都有,如果有误,望高手指导谢谢!

    CSS 将两个button按钮垂直+水平居中

    CSS 将button按钮垂直+水平居中 参考文章:CSS实现垂直居中的5种方法 具体效果如图: 这个方法使用了一个 position:absolute,有固定宽度和高度的 div。这个 div 被设置为 top:0; bottom:0; 。但是因为它有固定高度...

    CSS网页布局DIV水平居中的各种方法

    一、margin:auto 0 #wrap { margin:0 auto;} 上面这段代码的意思是说使wrap这个div到左右两侧的距离自动设置,上下为0(可以为任意)。...最后我们再从中间位置向左偏移回一半的距离来,这样就实现了水平居中了。

    css使用flexbox布局容器内多元素水平居中

    主要为大家详细介绍了css使用flexbox布局容器内多元素水平居中的方法,如何使用flexbox布局多元素水平居中?本文为大家进行解答,感兴趣的小伙伴们可以参考一下

    CSS垂直水平居中的各种解决方法汇总 (ฅ´ω`ฅ)已阅留爪

    单个块级元素水平居中 多个水平排列的块级元素 水平居中 多个垂直排列的块级元素 水平居中 CSS垂直居中 单行文本垂直居中 多行文本垂直居中 方法1:使用table布局 方法2:设置vertical-align,line-height 方法3:...

    块级元素的三种垂直水平居中的方法

    直奔主题在这里提供三种块级元素垂直水平居中的方法 flex(子级宽高可固定也可不固定,随意) 定位+margin(固定子级的宽高,margin-top,margin-left取自身一半的负值) 定位+transform(不固定子级的宽高) flex...

    CSS网页布局:div垂直居中的各种方法

    在前面的文章中我简单总结了一个“CSS在页面布局中实现div水平居中的方法”,其实水平居中实现还是比较简单的,反而垂直居中有点麻烦,因为我们设计页面的时候往往水平宽度都是固定的。因此我们有必要总结一下在页面...

    CSS解决页面图片水平垂直居中问题的方法

    做为一个前端设计人员,对于产品展示页面的设计一定不会陌生,其中产品图片摆放是必定经历的一步,并且水平居中和垂直居中又是最多的。有时需要产品图片水平垂直居中显示,这种展示用CSS来实现又是比较棘手的一件事...

    css实现元素水平垂直居中常见的两种方式实例详解

    主要给大家介绍了css实现元素水平垂直居中的两种方式,文中给出了完整的示例代码供大家参考学习,对大家的学习或者工作具有一定的参考价值,有需要的朋友们下面来一起看看吧。

    div+css有实例,易学易懂

    8.5.2 FIREFOX2.0 中的水平居中 8.5.3 解决方法 8.6 非浮动内容和容器的问题 8.6.1 IE6.0 中固定宽度和高度的容器和内容 8.6.2 FIREFOX2.0 中的容器与内容 8.6.3 可能出现的问题和解决方法 8.7 使用:after 伪类解决...

Global site tag (gtag.js) - Google Analytics