源码网,源码论坛,源码之家,商业源码,游戏源码下载,discuz插件,棋牌源码下载,精品源码论坛

 找回密码
 立即注册
查看: 614|回复: 25

[CSS/HTML] 元素水平居中方案全集

[复制链接]

7万

主题

861

回帖

32万

积分

论坛元老

Rank: 8Rank: 8

积分
329525
发表于 2006-9-25 00:00:00 | 显示全部楼层 |阅读模式

先来看我一个简单XHTML/HTML文件代码(部分),我们的目的是让#container水平居中。










<body>
 <div?id="container">
 <h1>content</h1>
 <p>Lorem?ipsum?dolor?sit?amet,?consectetuer?adipiscing?elit.Phasellus?varius?eleifend.</p>
</div>
</body>

使用自适应边界(auto?margin)
水平居中任意元素的首选办法是使用边界(margin)性质(property),并把左右之值设置为auto。但你必须为#container指定一个宽度。

div#container?{
 margin-left:?auto;
 margin-right:?auto;
 width:?168px;
}
这个方案在任何当代浏览器上都有效,即使是IE6,前提是在web标准兼容模式下(compliance?mode)。不幸的是,它不会在先前版本的IE/Win中工作。我们为此列一个表格:


浏览的自适应边界支持一览表?浏览器?版本?支持?
Internet Explorer 6.0, compliance?mode?是?
Internet Explorer 6.0, quirks?mode?否?
Internet Explorer 5.5 Windows?否?
Internet Explorer 5.0 Windows?否?
Internet Explorer 5.2 Macintosh?是?
Mozilla 所有当前版本?是?
Mozilla Firefox?所有版本?是?
Netscape?4.x?否?
Netscape?6.x+?是?
Opera?6.0,?7.0?Macintosh?and?Windows?是?
Safari?1.2?是?

尽管受到浏览器支持的限制,大部分设计师还是提倡你尽可能这样做。但我们依然可以使用CSS应付一切情况。

使用文本排列(text-align)
此方案需要使用到text-align性质,应用给body元素并且赋予center的值。

body{
 text-align:center;
}
它公正地对待各种浏览器,十分彻底,唾手可得。然而,这是赋予文本的性质,它使#container中的文本也居中了。所以,在布局上我们还得做一些额外工作:

div#container{
 text-align:?left;
}
这样才可以把文本的对齐方式返回默认状状态。

综合边界和文本排列
因为文本排列向后兼容,当代浏览器也支持自适应边界,很多设计师把他们结合起来,实现跨浏览器使用。

body{
text-align:?center;
}
#container?{
 margin-left:?auto;
margin-right:?auto;
 border:?1px?solid?red;
 width:?168px;
 text-align:?left
}
唉,依然不完美,因为还是一个黑客技巧?(hack)。你不得不为文本排列写下多余的规则。但现在,我们可以使用更完美的跨浏览器的方案。

负边界解决方案
此方案得结合使用绝对定位(absolute?positioning?)。首先,把#container绝对定位并左偏移 50%,这样,#container的左边界就是页面分辨率的一半。下一步,把#container的左边界设置为负值,值大小为#container宽 度(width)的一半。

#container?{
background:?#ffc?url(mid.jpg)?repeat-y?center;
 position:?absolute;
 left:?50%;
 width:?760px;
 margin-left:?-380px;
}
看,没有任何黑客技巧(no?hacks)!连Netscape?4.x都支持!

回复

使用道具 举报

0

主题

1万

回帖

100

积分

注册会员

Rank: 2

积分
100
发表于 2022-9-9 02:17:13 | 显示全部楼层
可以,看卡巴
回复 支持 反对

使用道具 举报

匿名  发表于 2022-9-9 03:23:37

free online slots

free casino slots
<a href="https://slotsonfreegames.com/">online casino real money</a>
回复 支持 反对

使用道具

匿名  发表于 2022-9-9 03:24:19

casino online

online slots
<a href="https://slotsonfreegames.com/">slot</a>
回复 支持 反对

使用道具

匿名  发表于 2022-9-9 03:25:00

free slots

УОН 37.139.53.x ·±нУЪ 2022-9-9 03:23
free casino slots
online casino real money

free casino slots
<a href="https://slotsonfreegames.com/">slots casino</a>
回复 支持 反对

使用道具

匿名  发表于 2022-9-9 03:25:31

slots free online


casino games slots free
<a href="https://slotsonfreegames.com/">online casino real money</a>
回复 支持 反对

使用道具

匿名  发表于 2022-9-9 03:26:03

free slots games


free casino slots
<a href="https://slotsonfreegames.com/">slots games</a>
回复 支持 反对

使用道具

匿名  发表于 2022-9-9 03:26:45

casino game

free online slots
<a href="https://slotsonfreegames.com/">online casino real money</a>
回复 支持 反对

使用道具

0

主题

2万

回帖

61

积分

注册会员

Rank: 2

积分
61
发表于 2022-10-25 17:42:25 | 显示全部楼层
还可以不错
回复 支持 反对

使用道具 举报

1

主题

2万

回帖

55

积分

注册会员

Rank: 2

积分
55
发表于 2023-3-5 18:23:08 | 显示全部楼层
哈哈哈哈哈哈哈
回复 支持 反对

使用道具 举报

高级模式
B Color Image Link Quote Code Smilies

本版积分规则

手机版|小黑屋|网站地图|源码论坛 ( 海外版 )

GMT+8, 2024-11-27 13:04 , Processed in 0.095272 second(s), 26 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表