最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

三種方式實(shí)現(xiàn)元素水平居中顯示與固定布局和流式布局概念理解

  發(fā)布時間:2013-01-11 11:00:22   作者:佚名   我要評論
css中讓文本居中的屬性很簡單就可以實(shí)現(xiàn),那就是設(shè)置text-align:center即可,讓元素水平居中,相信對于許多網(wǎng)頁設(shè)計(jì)師而言都不會陌生,首先,要 讓元素水平居中,就必須得了解css設(shè)計(jì)中固定布局和流式布局兩者的概念
css中讓文本居中的屬性很簡單就可以實(shí)現(xiàn),那就是設(shè)置text-align:center即可。而我這里所說的“元素”實(shí)際上是指容器,如果要有一個貼切點(diǎn)的標(biāo)簽,那應(yīng)該可以用div來表示。
讓元素水平居中,相信對于許多網(wǎng)頁設(shè)計(jì)師而言都不會陌生。但是有的時候,自己就在想,為什么要讓元素水平居中?是出于什么原因呢?都是一點(diǎn)自己的見解,蠻寫下來...

首先,要 讓元素水平居中,就必須得了解css設(shè)計(jì)中固定布局和流式布局兩者的概念。它們之間的直觀區(qū)別就看是否給元素設(shè)置了寬度。下面是兩段代碼,用來簡單地說明固定布局和流式布局的區(qū)別。
1、固定布局demo:

復(fù)制代碼
代碼如下:

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>position-layout</title>
<style type="text/css">
.wrapper{width:750px;position:relative;margin:0 auto;text-align:left;}
.contentArea{width:450px;position:absolute;top:0;left:150px;height:500px;background:#96c;}
.leftPanel{width:150px;position:absolute;top:0;left:0;height:500px;background:#999;}
.rightPanel{width:150px;position:absolute;top:0;left:600px;height:500px;background:#06C;}
</style>
</head>
<body>
<div class="wrapper">
<div class="contentArea"></div>
<div class="leftPanel"></div>
<div class="rightPanel"></div>
</div>
</body>
</html>

2、流式布局demo:

復(fù)制代碼
代碼如下:

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>col3-margin-layout</title>
<style type="text/css">
.contentArea{margin:0 160px;height:500px;background:#96c;}
.leftPanel{width:150px;float:left;height:500px;background:#999;}
.rightPanel{width:150px;float:right;height:500px;background:#06C;}
</style>
</head>
<body>
<div class="wrapper">
<div class="leftPanel"></div>
<div class="rightPanel"></div>
<div class="contentArea"></div>
</div>
</body>
</html>

通過上面兩個例子,可以得出:流式布局不存在元素水平居中的可能,因?yàn)樗际菨M屏顯示的。只有固定布局,因?yàn)橄迣?,所以就有了讓元素水平居中的可能?
其次,固定布局的實(shí)現(xiàn)也不一定要讓元素水平居中,之所以這么做,是為了讓瀏覽器的兩邊能夠留出平均的旁白,而不是只有一邊是一大片空白,影響美觀。
都是些淺顯的知識,下面進(jìn)入主題。
============================================================================
讓元素水平居中的三種方式,我將分別進(jìn)行介紹。如下
1、自動外邊距法。
這是目前網(wǎng)頁設(shè)計(jì)人員最熟悉的一種方法,它需要給容器設(shè)置寬度,并設(shè)置margin:auto樣式。下面是一段代碼:

復(fù)制代碼
代碼如下:

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>position-layout</title>
<style type="text/css">
.wrapper{width:750px;margin:0 auto;position:relative;}
.contentArea{width:450px;position:absolute;top:0;left:150px;height:500px;background:#96c;}
.leftPanel{width:150px;position:absolute;top:0;left:0;height:500px;background:#999;}
.rightPanel{width:150px;position:absolute;top:0;left:600px;height:500px;background:#06C;}
</style>
</head>
<body>
<div class="wrapper">
<div class="contentArea"></div>
<div class="leftPanel"></div>
<div class="rightPanel"></div>
</div>
</body>
</html>

通過這段代碼,可以發(fā)現(xiàn),這種方式在在目前各種主流瀏覽器下(包括ie6)都能很好的顯示,只有在ie6以下的版本不生效,元素依然向左排列。如果不考慮低版本瀏覽器的問題,那么它將是最便捷的。
2、文本居中和自動外邊距的結(jié)合使用
這種方式可以解決ie6以下版本不支持margin:0 auto的 問題,它的用法就是在body里設(shè)置text-align:center樣式。具體代碼如下:

復(fù)制代碼
代碼如下:

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>position-layout</title>
<style type="text/css">
body{text-align:center;}
.wrapper{width:750px;position:relative;margin:0 auto;text-align:left;}
.contentArea{width:450px;position:absolute;top:0;left:150px;height:500px;background:#96c;}
.leftPanel{width:150px;position:absolute;top:0;left:0;height:500px;background:#999;}
.rightPanel{width:150px;position:absolute;top:0;left:600px;height:500px;background:#06C;}
</style>
</head>
<body>
<div class="wrapper">
<div class="contentArea"></div>
<div class="leftPanel"></div>
<div class="rightPanel"></div>
</div>
</body>
</html>

在這里,text-align:center被作為css hack來使用,因?yàn)樗緦儆谖谋镜臉邮?,用在body里來實(shí)現(xiàn)元素居中的樣式,做了本不屬于自己該做的事...
3、負(fù)外邊距法。
這種方式的實(shí)現(xiàn)方式比前兩種復(fù)雜。它得結(jié)合定位來使用。具體代碼如下:

復(fù)制代碼
代碼如下:

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>negative-margin-element-center</title>
<style type="text/css">
.wrapper{width:750px;position:relative;left:50%;margin-left:-375px;}
.contentArea{width:450px;position:absolute;top:0;left:150px;height:500px;background:#96c;}
.leftPanel{width:150px;position:absolute;top:0;left:0;height:500px;background:#999;}
.rightPanel{width:150px;position:absolute;top:0;left:600px;height:500px;background:#06C;}
</style>
</head>
<body>
<div class="wrapper">
<div class="contentArea"></div>
<div class="leftPanel"></div>
<div class="rightPanel"></div>
</div>
</body>
</html>

首先,讓容器相對文檔向右偏移50%,然后,將容器的左外邊距設(shè)置為負(fù)的容器寬度的一半,即可實(shí)現(xiàn)元素的水平居中顯示。這種方式?jīng)]有hack,且兼容性很好,能在最廣泛的瀏覽器下表現(xiàn)一致。
以上就是我所知道的三種實(shí)現(xiàn)元素水平居中的方法,都比較簡單,寫下來就當(dāng)是一次知識的回顧總結(jié)吧。

相關(guān)文章

最新評論

成安县| 红河县| 蒲城县| 白城市| 法库县| 个旧市| 彝良县| 盖州市| 揭阳市| 任丘市| 九江县| 邢台县| 许昌市| 郴州市| 札达县| 海淀区| 长垣县| 元谋县| 莎车县| 柳林县| 黑山县| 佳木斯市| 雷山县| 怀来县| 东辽县| 门源| 深水埗区| 农安县| 井陉县| 和林格尔县| 凤冈县| 四会市| 安福县| 句容市| 阳泉市| 琼海市| 富阳市| 射洪县| 文水县| 济源市| 堆龙德庆县|