`

WEB2.0标准教程:第八天 CSS布局入门

阅读更多
CSS布局与传统表格(table)布局最大的区别在于:原来的定位都是采用表格,通过表格的间距或者用无色透明的GIF图片来控制文布局版块的间距;而现在则采用层(div)来定位,通过层的margin,padding,border等属性来控制版块的间距。

1.定义DIV
分析一个典型的定义div例子:
程序代码 程序代码
#sample{MARGIN:10px10px10px10px;
PADDING:20px10px10px20px;
BORDER-TOP:#CCC2pxsolid;
BORDER-RIGHT:#CCC2pxsolid;
BORDER-BOTTOM:#CCC2pxsolid;
BORDER-LEFT:#CCC2pxsolid;
BACKGROUND:url(images/bg_poem.jpg)#FEFEFEno-repeatrightbottom;
COLOR:#666;
TEXT-ALIGN:center;
LINE-HEIGHT:150%;WIDTH:60%;}

说明如下:
●层的名称为sample,在页面中用<divid="sample">就可以调用这个样式。
●MARGIN是指层的边框以外留的空白,用于页边距或者与其它层制造一个间距。"10px10px10px10px"分别代表"上右下左"(顺时针方向)四个边距,如果都一样,可以缩写成"MARGIN:10px;"。如果边距为零,要写成"MARGIN:0px;"。注意:当值是零时,除了RGB颜色值0%必须跟百分号,其他情况后面可以不跟单位"px"。MARGIN是透明元素,不能定义颜色。
●PADDING是指层的边框到层的内容之间的空白。和margin一样,分别指定上右下左边框到内容的距离。如果都一样,可以缩写成"PADDING:0px"。单独指定左边可以写成"PADDING-LEFT:0px;"。PADDING是透明元素,不能定义颜色。
●BORDER是指层的边框,"BORDER-RIGHT:#CCC2pxsolid;"是定义层的右边框颜色为"#CCC",宽度为"2px",样式为"solid"直线。如果要虚线样式可以用"dotted"。
●BACKGROUND是定义层的背景。分2级定义,先定义图片背景,采用"url(../images/bg_logo.gif)"来指定背景图片路径;其次定义背景色"#FEFEFE"。"no-repeat"指背景图片不需要重复,如果需要横向重复用"repeat-x",纵向重复用"repeat-y",重复铺满整个背景用"repeat"。后面的"rightbottom;"是指背景图片从右下角开始。如果没有背景图片可以只定义背景色BACKGROUND:#FEFEFE
●COLOR用于定义字体颜色,上一节已经介绍过。
●TEXT-ALIGN用来定义层中的内容排列方式,center居中,left居左,right居右。
●LINE-HEIGHT定义行高,150%是指高度为标准高度的150%,也可以写作:LINE-HEIGHT:1.5或者LINE-HEIGHT:1.5em,都是一样的意思。
●WIDTH是定义层的宽度,可以采用固定值,例如500px,也可以采用百分比,象这里的"60%"。要注意的是:这个宽度仅仅指你内容的宽度,不包含margin,border和padding。但在有些浏览器中不是这么定义的,需要你多试试。
下面是这个层的实际表现:
html.gif" style="margin:0px 2px -3px 0px"> HTML代码


[Ctrl+A 全部选择 提示:你可先修改部分代码,再按运行]


我们可以看到边框是2px的灰色,背景图片在右下没有重复,内容距离上和左边框20px,内容居中,一切和预想的一样。hoho,虽然不好看,但它是最基本的,掌握了它,你就已经学会一半的CSS布局技术了。就是这样,不算难吧!(另一半是什么?另一半是层与层之间的定位。我会在后面逐步讲解。)

2.CSS2盒模型
自从1996年CSS1的推出,W3C组织就建议把所有网页上的对像都放在一个盒(box)中,设计师可以通过创建定义来控制这个盒的属性,这些对像包括段落、列表、标题、图片以及层<div>。盒模型主要定义四个区域:内容(content)、边框距(padding)、边界(border)和边距(margin)。上面我们讲的sample层就是一个典型的盒。对于初学者,经常会搞不清楚margin,background-color,background-image,padding,content,border之间的层次、关系和相互影响。这里提供一张盒模型的3D示意图,希望便于你的理解和记忆。



3.辅助图片一律用背景处理
用XHTML+CSS布局,有一个技术一开始让你不习惯,应该说是一种思维方式与传统表格布局不一样,那就是:所有辅助图片都用背景来实现。类似这样:
BACKGROUND:url(images/bg_poem.jpg)#FEFEFEno-repeatrightbottom;
尽管可以用<img>直接插在内容中,但这是不推荐的。这里的"辅助图片"是指那些不是作为页面要表达的内容的一部分,而仅仅用于修饰、间隔、提醒的图片。例如:相册中的图片、图片新闻中的图片,上面的3d盒模型图片都属于内容的一部分,它们可以用<img>元素直接插在页面里,而其它的类似logo,标题图片,列表前缀图片都必须采用背景方式或者其他CSS方式显示。

这样做的原因有2点:
●将表现与结构彻底相分离(参考阅读另一篇文章:《理解表现与结构相分离》),用CSS控制所有的外观表现,便于改版。
●使页面更具有易用性,更有亲和力。例如:盲人使用屏幕阅读机,用背景技术实现的图片就不会被朗读出来。
分享到:
评论

相关推荐

    ASP.NET 2.0快速入门 下载列表 微软

    ASP.NET 2.0快速入门(8):ASP.NET 2.0 web part Web part是ASP.NET 2.0的又一新特性,通过使用web part用户可以在客户端非常容易的重新部署网页的布局。通过本课的学习,听众可以了解到如何设计这种可以结构的网页。...

    [精通CSS.DIV.网页样式与布局].(前沿科技).扫描版

    随着Web 2.0的大潮席卷而来,网页标准化CSS+DIV的设计方式正逐渐取代传统的表格布局模式,对CSS的学习也成为设计人员的必修课。 本书系统地讲解了CSS层迭样式表的基础理论和实际运用技术,通过大量实例对CSS进行...

    3.ASP.NET 2.0 入门经典(第4版) [压缩包1/10]

    3.ASP.NET 2.0 入门经典(第4版) [压缩包1/10] 原书名: Beginning ASP.NET 2.0 原出版社: Wrox 作者:(美)Chris Hart, John Kauffman [同作者作品] [作译者介绍] 译者: 张楚雄[同译者作品] 高猛 出版社:...

    2.ASP.NET.2.0.高级编程(第4版) [1/7]

    第8章 使用Master页面 225 8.1 需要Master页面的原因 225 8.2 Master页面基础 227 8.3 编写Master页面 228 8.4 编写内容页面 231 8.4.1 混合页面类型和语言 234 8.4.2 指定要使用的Master页面 235 8.4.3 使用...

    asp.net知识库

    Web2.0时代,RSS你会用了吗?(技术实现总结) 知识集锦:三分钟全面了解 Blog 和 RSS C#+ASP.NET开发基于Web的RSS阅读器 ASP.NET RSS Toolkit(RSS工具) Serialize Your Deck with Positron [XML Serialization, XSD, ...

    ASP.NET2.0高级编程(第4版)1/6

    该书与《ASP.NET 2.0入门经典(第4版)》及其早期版本,曾影响到无数中国Web程序员。 目录 第1章 ASP.NET 2.0概述1 1.1 简史1 1.2 ASP.NET 2.0的目标2 1.2.1 开发人员的效率3 1.2.2 管理5 1.2.3 性能和可伸缩性8...

    ASP.NET3.5从入门到精通

    第 8 章 Web 窗体的数据控件 8.1 数据源控件 8.1.1 SQL 数据源控件(SqlDataSource) 8.1.2 Access 数据源控件(AccessDataSource) 8.1.3 目标数据源控件(ObjectDataSource) 8.1.4 LINQ 数据源控件...

    史上最好传智播客就业班.net培训教程60G 不下会后悔

    代码生成、网页静态化、基于JQuery的Web2.0页面开发、AJAX、SEO、网站调优、采集器、RSS/XML、网站防黑(防XSS攻击、防注入漏洞攻击、防CC攻击、防挂马、防盗链、敏感词过滤、广告帖智能过滤)、IIS管理与调优、流量...

    ASP.NET4高级程序设计(第4版) 3/3

    内容简介  《ASP.NET 4高级程序设计(第4版)》是ASP.NET领域的鸿篇巨制,全面讲解了ASP.NET...16.4.4 具有表格和CSS布局的母版页 556 16.4.5 母版页和相对路径 559 16.4.6 通过配置文件应用母版页 559 16.5 高级...

    ASPNET35开发大全第一章

    第8章 Web窗体的数据控件 8.1 数据源控件 8.1.1 SQL数据源控件(SqlDataSource) 8.1.2 Access数据源控件(AccessDataSource) 8.1.3 目标数据源控件(ObjectDataSource) 8.1.4 LINQ数据源控件(LinqDataSource) ...

    ASP.NET4高级程序设计第4版 带目录PDF 分卷压缩包 part1

    16.4.4 具有表格和CSS布局的母版页 16.4.5 母版页和相对路径 16.4.6 通过配置文件应用母版页 16.5 高级母版页 16.5.1 和母版页类交互 16.5.2 动态设置母版页 16.5.3 嵌套母版页 16.6 总结 第17章 ...

    ASP.NET 3.5 开发大全11-15

    第8章 Web窗体的数据控件 8.1 数据源控件 8.1.1 SQL数据源控件(SqlDataSource) 8.1.2 Access数据源控件(AccessDataSource) 8.1.3 目标数据源控件(ObjectDataSource) 8.1.4 LINQ数据源控件(LinqDataSource) ...

    ASP.NET 3.5 开发大全

    第8章 Web窗体的数据控件 8.1 数据源控件 8.1.1 SQL数据源控件(SqlDataSource) 8.1.2 Access数据源控件(AccessDataSource) 8.1.3 目标数据源控件(ObjectDataSource) 8.1.4 LINQ数据源控件(LinqDataSource) ...

    ASP.NET 3.5 开发大全word课件

    第8章 Web窗体的数据控件 8.1 数据源控件 8.1.1 SQL数据源控件(SqlDataSource) 8.1.2 Access数据源控件(AccessDataSource) 8.1.3 目标数据源控件(ObjectDataSource) 8.1.4 LINQ数据源控件(LinqDataSource) ...

    ASP.NET 3.5 开发大全1-5

    第8章 Web窗体的数据控件 8.1 数据源控件 8.1.1 SQL数据源控件(SqlDataSource) 8.1.2 Access数据源控件(AccessDataSource) 8.1.3 目标数据源控件(ObjectDataSource) 8.1.4 LINQ数据源控件(LinqDataSource) ...

    JAVA上百实例源码以及开源项目

    8个目标文件 简单 JavaScript万年历 显示出当前时间及年份,还可以选择年份及月份和日期 Java编写的HTML浏览器 一个目标文件 摘要:Java源码,网络相关,浏览器  Java编写的HTML浏览器源代码,一个很简单甚至不算是...

    JAVA上百实例源码以及开源项目源代码

    Java编写的山寨QQ,多人聊天+用户在线 21个目标文件 摘要:JAVA源码,媒体网络,山寨QQ,Java聊天程序 Java编写的山寨QQ,多人聊天+用户在线,程序分服务端和客户端,典型C/S结构, 当用户发送第一次请求的时候,验证...

Global site tag (gtag.js) - Google Analytics