您的位置:百味书屋 > 范文大全 > 经典范文 > css控制div中元素居中的示例 正文

css控制div中元素居中的示例

2017-01-19 06:17:58 来源网站: 百味书屋

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

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

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

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

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

margin-left: auto;

margin-right: auto;

width: 168px;

}

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

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

2.使用text-align实现居中

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

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

body{

text-align:center;

}

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

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

text-align:left;

}

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

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

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

body {

text-align: center;

}

#container {

margin-left: auto;

margin-right: auto;

border: 1px solid red;

width: 168px;

text-align: left

}

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

4.负外边距解决方案

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

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

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

#container {

background: #ffcurl(mid.jpg) repeat-y center;

position: absolute;

left: 50%;

width: 760px;

margin-left: -380px;

}

看,没有任何hack!虽然这并不是首选的解决方案,但也是个不错的方法,且适用性极广—甚至在Netscape Navigator 4.x中都没有任何问题,很令人吃惊,不是吗?所以若想得到最广泛的浏览器支持,那么这种方法将会是最好的选择。

篇二:DIV居中之div水平居中 让DIV布局居中

DIV 居中之div水平居中 让DIV布局居中篇

如何让DIV居中呢?如何让DIV盒子水平居中呢?本节DIVCSS5让大家实现DIV布局水平居中。

一、div居中实现介绍-

在布局一张网页时,通常网页主体框架是居中于浏览器中的。实现最外层DIV水平居中与浏览器中需要一个条件和一个设置。

假如最外层DIV盒子的CSS命名为“#divcss5”,这个时候为了兼容各大浏览器实现最外层的这个盒子居中。

一条件:

这个时候对“body”设置css内容居中样式(text-align:center)

即CSS代码:

一设置:

这个时候对“#divcss5”设置居中必备样式css margin

即CSS代码:

二、DIV居中用法实例-TOP

为了便于观察布局居中效果,我们再对“#divcss5”加一个css边框为黑色,css宽度为300px;高度为100px样式。

1、最终得到DIV居中的CSS代码:

2、对应html代码片段:

3、居中案例截图

DIV水平居中效果图

篇三:关于CSS控制DIV水平居中问题(原创教程)

关于CSS 控制DIV水平居中问题,我看到很多新人搞不明月。记得第一次看CSS是一个老外写的书,那个里面谈到居中使用。

margin-left:auto;

margin-right:auto;

其实等同于:

margin:0 auto;

于是可以使用这种方式,但是有人用IE时发现没有居中。这里建议你看看是否遗漏了DTD声明。

<!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Transitional//EN”

“http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd”>

非常多的人犯过类似的错误!这种方法也可以说屡试不爽,但是在某些情况下还是行不通的。于是有了第二种方法。

margin-left:50%;

left: -width/2;

这里的width不是CSS中的Width,而是你的DIV的宽度例如你的div是768px宽,那么你就应该设置left:-384px。很好,已经有两种方法了,可以说已经能够解决你可能遇到的问题了。

有时候你会发现,这两个还不行。不能兼容一些浏览器。于是发现有了第三种方法,这中方法主要是考虑IE,它是建立在第一种方法的基础之上。它需要设置body。 body {text-align: center;}

这样IE下也居中了,但是它带来一个新的问题,你发现你的页面中所有文字都是居中的,这样很不好看。这个就很容易解决了,只需要在你的DIV定义中加上 text-align: left; 之类调整的设置就行了。

以上文字仅是一个饭后参考与小品,并非原创,大家在实际工作中可以引起注意! 本文由站酷网 - kangtao原创,转载请保留此信息,多谢合作。


css控制div中元素居中的示例》出自:百味书屋
链接地址:http://www.850500.com/news/72900.html
转载请保留,谢谢!
查看更多相关内容>>css控制div中元素居中的示例
相关文章
  • css控制div中元素居中的示例

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

推荐范文