`
tiantian521546
  • 浏览: 1614 次
  • 性别: Icon_minigender_2
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

利用CSS使网页居中对齐

阅读更多
如何使DIV居中,主要的样式定义如下:

body {TEXT-ALIGN: center;}
#center { MARGIN-RIGHT: auto; MARGIN-LEFT: auto; }
说明:

首先在父级元素定义TEXT-ALIGN: center;这个的意思就是在父级元素内的内容居中;对于IE这样设定就已经可以了。但在mozilla中不能居中。解决办法就是在子元素定义时候设定时再加上“MARGIN-RIGHT: auto;MARGIN-LEFT: auto; ”

需要说明的是,如果你想用这个方法使整个页面要居中,建议不要套在一个DIV里,你可以依次拆出多个div,只要在每个拆出的div里定义MARGIN-RIGHT: auto;MARGIN-LEFT: auto; 就可以了。

如何使图片在DIV 中垂直居中用背景的方法。
举例:

body{BACKGROUND: url(http://www.w3cn.org/style/001/logo_w3cn_194x79.gif) #FFF no-repeat center;}
关键就是最后的center,这个参数定义图片的位置。还可以写成“top left”(左上角)或者"bottom right"等,也可以直接写数值"50 30"

效果如下:

如何使文本在DIV中垂直居中,如果是文字,便不能用背景方法,可以用增高行距的办法变通实现垂直居中,完整代码如下:

<html>
<head>
<style>
body{TEXT-ALIGN: center;}
#center{ MARGIN-RIGHT: auto;
MARGIN-LEFT: auto;
height:200px;
background:#F00;
width:400px;
vertical-align:middle;
line-height:200px;
}
</style>
</head>
<body>
<div id="center"><p>test content</p></div>
</body>
</html>
说明:

vertical-align:middle;表示行内垂直居中,我们将行距增加到和整个DIV一样高line-height:200px;然后插入文字,就垂直居中了。传统的做法:居中的布局,首先,由于是做比较,让我们来看一个例子,它是一种基于一个居中表格的页面设计。图表A中显示了一个例子,以下是这个例子的编码:

<body>
<p>&nbsp;</p>
<table width="80%" border="0" align="center" cellpadding="0"
cellspacing="10"bgcolor="#FFFFFF">
<tr>
<td colspan="2"><h2 align="center">Header</h2></td>
</tr>
<tr>
<td width="150px" valign="top"><h4>Navigation</h4>
<ul>
<li>Let me not to the marriage of true minds</li>
<li>Admit impediments; love is not love</li>
<li>Which alters when it alteration finds</li>
</ul>
</td>
<td valign="top"><p>Main Content -- Love's not
time's fool...</p>
</td>
</tr>
<tr>
<td colspan="2"><hr />
<p>Footer text -- Admit impediments...</p>
</td>
</tr>

</table>

<p>&nbsp;</p>

</body>

< table >这个标签包括了以下一些属性,将其宽度定义为页面宽度的80%,并将该表格置于页面的中间。在表格的前面有一个空白段落,这就使得页面的顶端与表格的顶端之间有一些垂直空间。在表格的后面也有一个空白段落,这就使得页面的底端与表格的底端之间也有一些空间。这个表格包括两列三行。顶端的单元被合并了,用来放置页眉,底端的行也合并了,以安置页脚,而中间那些单元则被分为两列,一个供放置主要内容,另一个则是导航工具栏。

这是一个简单的例子,诠释的是一种多年以来广为人们使用的技术。在现今的那些应用软件中,有代表性的主要种包含了嵌套表格,用以创建一种复杂得多的版面设计,不过,它的复杂性虽然被人为加大了,它所采用的基本技术却并没有改变。

将居中的设计转换成使用CSS
要想将这种传统的基于表格的版面设计转换成用CSS,你只要用divs来代替那些表格和表格单元就行了。一个div取代表格本身,另一个取代那些单个的表格单元,这些单个的表格单元定义了主要的版面设计元素,诸如标题,页脚,导航工栏,以及主要内容。每个div都有一个id,且它们的id都是独一无二的,你可以用一个CSS选择器来让它们创建各自不同的样式,每一种样式对应于div中的一种,这种对应关系依据id而建立。那个取代表格的div被标上了id= 外部,其它那些div则靠他们各自的功能来鉴别。

这是已校订过的用div代替表格的XHTML的编码:

<body>
<div id="outer">
<div id="header">
<h2>Header</h2>
</div>
<div id="nav">
<h4>Navigation</h4>
<ul>
<li>Let me not to the marriage of true minds</li>
<li>Admit impediments; love is not love</li>
<li>Which alters when it alteration finds</li>
</ul>
</div>
<div id="main">
<p>Main Content -- Love's not time's fool...</p>
</div>
<div id="footer">
<p>Footer text -- Admit impediments...</p>
</div>
</div>
</body>

注意一下所有那些陈述的格式,原来它们被包括在<table>和<td>标签中,现在已经被移走了。而那些位于表格前面和后面的空白段落也都不见了。CSS格式会处理所有的格式化以及空间的问题。

以下是CSS的编码,就是这些编码,将页面设计成一种居中的样式,这种设计与前面所说的基于表格的设计很类似:

body {
background-color: #999999;
font-size:12px;
font-family:Verdana, Arial, Helvetica, sans-serif;
}

div#outer {
width: 80%;
background-color:#FFFFFF;
margin-top: 50px;
margin-bottom: 50px;
margin-left: auto;
margin-right: auto;
padding: 0px;
border: thin solid #000000;
}

div#header {
padding: 15px;
margin: 0px;
text-align: center;
}

div#nav {
width: 25%;
padding: 10px;
margin-top: 1px;
float: left;
}

div#main {
margin-left: 30%;
margin-top: 1px;
padding: 10px;
}

div#footer {
padding: 15px;
margin: 0px;
border-top: thin solid #000000;
}

解析CSS编码
与基于表格的版面设计比起来,它的主体样式并没有什么变化。它只不过设置了一下背景颜色,默认正文字体以及尺寸大小。

div#outer 是其中的一种样式,它是这一技术的关键。这就是前面提到过的以div取代表格的样式,它创建了居中的盒子,而这个盒子成了包容该页面所有内容的容器。将宽度设置为80%的规则设定了该div的宽度,就跟表格标签的相应属性规定该表格的宽度一样。与此相类似,background-color: #FFFFFF为div建立了一个白色的背景,就如同表格中bgcolor="#FFFFFF"属性为表格设置白色背景一样。margin-top: 50px and margin-bottom: 50px则用顶端和底端的空白来取代表格中用来造成垂直空间的空白段落。

这一技术的关键在于,外部div的中心要安排合适。这里存在一个难题,可以说是我们面临的一个挑战,即div没有像align="center"这样一个属性,这与表格不同,表格中有这样一种属性。你可以在div的母元素(在本案例,指< body >标签)中使用text-align: center来将外部div置于中心位置。尽管除了正文以外,大多数浏览器还会为一些诸如div的块元素使用该队列,但是我们有证据可以证明它是对排列正文这一属性的误用,而且它会使问题复杂化,就如同你创建一些额外的样式来使那些已按正常标准对齐的文字重新回到左边一样。

用CSS来将块元素置于中心位置的正确方法是这样设置:margin-left: auto,margin-right: auto。这就指示浏览器自动计算页面两边合适的空白宽度,从而将div置于中心。border: thin solid #000000这一规则在外部div的周围添加了一个边界,这是因为用CSS添加很容易,而如果用表格的话就很难了。CSS编码中的其它部份则规定了 div的页眉,页脚,nav,以及主要内容。

div#header和div#footer则设定了
分享到:
评论

相关推荐

    网页制作 css让页面居中对齐

    网页制作 css让页面居中对齐 css让页面居中对齐是网页制作中的一项基本需求,今天我们将总结一下css让页面居中对齐的方法。 一、使用margin实现居中对齐 这是我们大家用的最多的方法,使用的时候必须为容器制定...

    css左右居中对齐

    在网页设计中,CSS...总的来说,理解并掌握这些CSS居中对齐的方法,将有助于提升你的网页设计技能,使你能够更灵活地控制网页元素的布局。在实践中不断探索和尝试,你会发现CSS在网页设计中有着无穷的可能性。

    CSS让图片垂直居中和底端对齐的代码

    本CSS教程提供了两种对齐方式即垂直居中对齐和底端对齐!更多内容请参考本站的CSS视频教程。 CSS使图片垂直居中的代码: &lt;!DOCTYPE ...

    css图片垂直居中方法

    在网页设计中,让图片垂直居中是一项常见的需求,它能确保页面布局的美观与均衡。CSS(Cascading Style Sheets)提供了多种方法来实现这一效果。以下将详细阐述几种常用的CSS图片垂直居中的技术。 1. **Flexbox布局...

    css实现垂直居中

    在网页设计中,让元素在页面上垂直居中是一项常见的需求。CSS(Cascading Style Sheets)提供了多种方法来实现这一目标。以下是一些主要的CSS技术,它们可以帮助你实现"css实现垂直居中": 1. **Flexbox布局** ...

    css图片垂直居中

    本篇文章将深入探讨如何利用CSS实现图片的垂直居中效果。 首先,我们来看几种常见且实用的CSS方法: 1. **Flexbox布局**: Flexbox是CSS3引入的一种新的布局模式,特别适合处理容器内元素的对齐问题。要使图片在...

    DIV+CSS DIV居中布局

    CSS Grid布局也支持居中对齐。在网格容器上设置`align-items: center;`和`justify-content: center;`可以实现双向居中。例如: ```css .container { display: grid; align-items: center; justify-content: ...

    div+css垂直居中和水平居中

    `属性可以轻松地将文本内容在div内居中对齐。例如: ```css .container { text-align: center; } ``` 2. **多行文本水平居中**: 对于多行文本,`display: flex;`和`justify-content: center;`组合可以实现...

    如何使用CSS将HTML页面居中显示

    无论是对于初学者还是有经验的开发者来说,掌握如何使用CSS来实现HTML页面的居中对齐都是非常必要的。本文将详细介绍如何通过CSS来使HTML页面在各种浏览器中兼容地居中显示。 #### 一、理解居中显示的基本概念 在...

    DIV+CSS上下左右绝对居中

    在网页设计中,"DIV+CSS上下左右绝对居中"是一个常见的布局需求,尤其是在构建响应式网站时。这个主题涉及到CSS(层叠样式表)的布局技巧,它可以帮助元素在不同屏幕尺寸下都能保持在容器的中心位置。下面将详细探讨...

    div+css实现div的多层重叠,并且居中显示

    我们在制作网页时,有时需要多重div的重叠,每个div添加不同的内容,以实现特殊的层叠效果,这个如何实现,在网上没找到现成的详细的教程,但是可以用现有的知识,自己摸索哦。终于成功了,O(∩_∩)O~ 分享出来。...

    div+css有实例,易学易懂

    - **利用行高属性使文本垂直居中**:结合`line-height`和`height`属性。 - **间隔与空白**:使用`margin`和`padding`控制元素间的间距。 - **文本的转换**:使用`text-transform`属性更改文本大小写。 #### 水平和...

    html+jq+css 自适应屏幕居中

    标题中的“html+jq+css 自适应屏幕居中”指的是使用HTML、JavaScript(jQuery库)和CSS技术来实现网页元素在不同屏幕尺寸下都能保持居中的功能,特别是针对弹窗的场景。这样的设计有助于提供良好的用户体验,无论...

    css水平居中4种方式

    在CSS布局设计中,将元素水平居中对齐是一项常见的需求。无论是图片、宽度和高度固定的元素,还是自适应的动态元素,都有多种方法可以实现水平居中。以下是标题所提及的“css水平居中4种方式”的详细解析: 1. **...

    DreamWeaver文字怎么居中对齐? dw垂直居中对齐的技巧

    在DreamWeaver中实现文字居中对齐,主要涉及到两个CSS属性:text-align和line-height。text-align属性用于控制文字的水平对齐方式,而line-height属性则控制文字的垂直位置。 1. 水平居中对齐技巧 在DreamWeaver中...

    css3块元素居中

    在CSS3中,实现块元素的居中是一个常见的布局需求,尤其当涉及到页面设计与响应式布局时。根据所提供的文件信息,我们可以详细探讨几种在不同场景下实现块元素居中的方法,以及理解其中的原理。 ### 1. 内联元素...

    css遮罩全屏居中对齐的实现方式

    在CSS布局设计中,全屏遮罩层的居中对齐是一个常见的需求,尤其是在加载提示、弹窗消息或用户交互时。本篇文章将探讨如何利用CSS实现这样的效果,结合具体的实例代码进行解析。 首先,我们需要创建一个全屏的遮罩层...

    CSS解决未知高度的DIV垂直居中

    1. **Table Display Model**:通过将父元素的`display`属性设置为`table`,子元素设置为`table-cell`,可以利用表格模型实现垂直居中。 2. **Positioning and Offset**:通过定位技术和偏移量来实现垂直居中,这种...

    总结垂直居中对齐的解决方案

    在网页设计中,垂直居中对齐是一种常见的布局需求,无论是单行文本、多行文本、图片或者其他元素,都需要能够灵活地实现垂直居中的显示效果。这篇博客文章将深入探讨几种常用的垂直居中对齐解决方案,并结合源码进行...

Global site tag (gtag.js) - Google Analytics