完美实现CSS页面居中方法揭秘

开发 前端
你对CSS页面居中的方法是否了解,这里和大家分享一下,我们常用的margin:0auto;方法,这个方法是大家用的最多的方法,使用的时候必须为容器指定宽度,另外向大家介绍几种特殊的方法。

本文向大家描述一下实现CSS页面居中的几种方法,常用的有margin:0auto;方法,还有用text-align实现居中,这个方法把整个页面当作文本对待,把body的属性设置为{text-align:center;},这样的话页面所有内容全部居中了。

***实现CSS页面居中方法揭秘

◆我们常用的margin:0auto;方法

这个方法是大家用的最多的方法,使用的时候必须为容器指定宽度。

例子:#main{width:960px;margin:0auto;}这个在大部分浏览器里面都可以很好的实现效果。

但是在IE6之前的版本中却不被支持,下面看一下第二种方法。

◆用text-align实现居中,这个方法其实算是一个hack

这个方法把整个页面当作文本对待,把body的属性设置为{text-align:center;}这样的话页面所有内容全部居中了,还需要把页面总的外框(wrap)属性{text-align:left;}

这样的话页面就居中了。

viewplaincopytoclipboardprint? 

  1. body{text-align:center;}  
  2. wrap{text-align:left;}  
  3. body{text-align:center;}  
  4. wrap{text-align:left;}  
  5.  

负的外边距

负外边距需要和绝对定位同时使用,才会生效。

首先需要一个{wrap}来包裹所有的页面内容,并将其定位到页面的50%。这样{warp}容器据浏览器左边50%的距离。

然后再用负边距,将容器左边距设置为{wrap}宽度的一半即可。

viewplaincopytoclipboardprint? 

  1. #wrap{  
  2. width:800px;  
  3. position:absolute;  
  4. left:50%;  
  5. margin:000-400px;  
  6. }  
  7. #wrap{  
  8.  width:800px;  
  9. position:absolute;  
  10. left:50%;  
  11. margin:000-400px;  
  12. }  

 这样wrap就居中对齐了,这个方法基本上可以兼容所有的浏览器了。

综上所述:***种方法是我们大家***的解决方案,第二种方法其实可以和***种方法结合起来用更好,第三种方法是是可以兼容所有的浏览器,如果你对你的也页面兼容性要求的高些,这个也可以作为你的***哈!

在了解XHTML代码规范后,我们就要进行CSS布局。首先先介绍一些CSS的入门知识。如果你已经很熟悉了,可以跳过这一节,直接进入下一节CSS是CascadingStyleSheets(层叠样式表)的缩写。是一种对web文档添加样式的简单机制,属于表现层的布局语言。#p#

基本语法规范

分析一个典型CSS的语句:

  1. p{COLOR:#FF0000;BACKGROUND:#FFFFFF}  
  2.  

其中"p"我们称为"选择器"(selectors),指明我们要给"p"定义样式;

样式声明写在一对大括号"{}"中;

COLOR和BACKGROUND称为"属性"(property),不同属性之间用分号";"分隔;

"#FF0000"和"#FFFFFF"是属性的值(value)。

◆颜色值

颜色值可以用RGB值写,例如:color:rgb(255,0,0),也可以用十六进制写,就象上面例子color:#FF0000。

如果十六进制值是成对重复的可以简写,效果一样。例如:#FF0000可以写成#F00。但如果不重复就不可以简写,例如#FC1A1B必须写满六位。

◆定义字体

web标准推荐如下字体定义方法:

viewplaincopytoclipboardprint? 

  1. body{font-family:"LucidaGrande",Verdana,  
  2. Lucida,Arial,Helvetica,宋体,sans-serif;}  
  3. body{font-family:"LucidaGrande",  
  4. Verdana,Lucida,Arial,Helvetica,宋体,sans-serif;}  
  5.  

字体按照所列出的顺序选用。如果用户的计算机含有LucidaGrande字体,文档将被指定为LucidaGrande。没有的话,就被指定为Verdana字体,如果也没有Verdana,就指定为Lucida字体,依此类推;LucidaGrande字体适合MacOSX;Verdana字体适合所有的Windows系统;Lucida适合UNIX用户"宋体"适合中文简体用户;如果所列出的字体都不能用,则默认的sans-serif字体能保证调用;

◆群选择器

当几个元素样式属性一样时,可以共同调用一个声明,元素之间用逗号分隔。

p,td,li{font-size:12px;}

◆派生选择器

可以使用派生选择器给一个元素里的子元素定义样式,例如这样:

  1. listrong{font-style:italic;font-weight:normal;}  
  2.  

就是给li下面的子元素strong定义一个斜体不加粗的样式。

◆id选择器

用CSS布局主要用层"div"来实现,而div的样式通过"id选择器"来定义。例如我们首先定义一个层

  1. <dividdivid="menubar">div> 
  2.  

然后在样式表里这样定义

  1. #menubar{MARGIN:0px;BACKGROUND:#FEFEFE;COLOR:#666;}  
  2.  

其中"menubar"是你自己定义的id名称。注意在前面加"#"号。

id选择器也同样支持派生,例如:#menubarp{text-align:right;margin-top:10px;}

这个方法主要用来定义层和那些比较复杂,有多个派生的元素。#p#

◆类别选择器

在CSS里用一个点开头表示类别选择器定义,例如:.

  1. 14px{color:#f60;font-size:14px;}  
  2.  

在页面中,用class="类别名"的方法调用:

  1. <spanclassspanclass="14px">14px大小的字体span> 
  2.  

这个方法比较简单灵活,可以随时根据页面需要新建和删除。

◆定义链接的样式

CSS中用四个伪类来定义链接的样式,分别是:a:link、a:visited、a:hover和a:active,例如:

viewplaincopytoclipboardprint? 

  1. a:link{font-weight:bold;text-decoration:none;color:#c00;}  
  2. a:visited{font-weight:bold;  
  3. text-decoration:none;color:#c30;}  
  4. a:hover{font-weight:bold;text-decoration:underline;color:#f60;}  
  5. a:active{font-weight:bold;  
  6. text-decoration:none;color:#F90;}  
  7. a:link{font-weight:bold;text-decoration:none;color:#c00;}  
  8. a:visited{font-weight:bold;  
  9.  
  10. text-decoration:none;color:#c30;}  
  11. a:hover{font-weight:bold;  
  12. text-decoration:underline;color:#f60;}  
  13. a:active{font-weight:bold;  
  14. text-decoration:none;color:#F90;}  

以上语句分别定义了"链接、已访问过的链接、鼠标停在上方时、点下鼠标时"的样式。注意,必须按以上顺序写,否则显示可能和你预想的不一样。记住它们的顺序是“LVHA”。
 

【编辑推荐】

  1. CSS***实现垂直居中的方法及优缺点
  2. CSS Sprites样式生成工具用法详解
  3. FireFox和IE中CSS兼容技巧汇总
  4. CSS代码整理及优化七大原则
  5. 深入剖析Firefox下 margin-top失效原因与解决方案

 

 

责任编辑:佚名 来源: nowamagic.net
相关推荐

2010-09-02 13:03:38

CSS垂直居中

2010-09-10 13:58:38

DIV图片居中

2010-08-31 14:49:57

CSS居中

2010-09-09 10:15:35

DIVCSS

2010-09-13 09:47:25

XHTML/CSS

2021-09-26 13:42:28

开发CSS代码

2020-10-12 08:20:54

CSS居中内联

2022-12-20 15:17:29

CSS开发

2022-07-28 13:01:35

CSS前端元素居中

2010-08-27 10:30:16

CSS垂直居中

2010-09-09 10:23:23

DIVCSS垂直居中

2009-09-08 13:52:54

CheckBox选中

2010-09-06 15:46:08

CSSDIV

2010-09-01 15:28:11

CSSexpression

2010-09-14 09:24:40

CSS实例

2010-08-16 16:49:30

DIV CSS居中

2010-08-26 11:27:35

CSS居中

2010-08-23 10:43:21

DIVCSS

2010-07-29 15:09:19

Flex全屏

2010-09-13 14:09:35

CSS文字
点赞
收藏

51CTO技术栈公众号