前 言 欢迎阅读《CSS入门经典(第3版)》。 层叠样式表(Cascading Style Sheet,CSS)是Web设计人员和开发人员使用的一种工具,可以与HTML和XHTML等标记语言结合起来构建网站。CSS为Web浏览器提供了控制Web页面的外观所需的信息,例如HTML元素的位置、文本样式、背景、颜色和图像等。 高级CSS技术使网站设计人员能够调整移动Web浏览器的布局和设计,并且提供创建针对普通桌面浏览器的网站所需的技巧。本书中将介绍为移动设备编写CSS的基础知识。 0.1 第3版的新变化 本书的第2版完全由Richard York撰写,全面彻底地介绍了当时使用的CSS。其他介绍CSS的图书可能都没有本书这么深入和详细。 在第3版中,我接手了Richard的工作,并做了一些变化,将重点放在了专业的CSS设计人员在设计各种网站时每天都在采用的技术上。我的目标是使学习CSS的过程变得简单,并使您能够迅速而高效地编写CSS。 本书保留了上一版的不少内容,但是根据我多年使用CSS编写各种或大或小、或复杂或简单的网站的经验,对其中的部分内容进行了调整。 虽然书中仍然顾及了当今仍在使用的较老的浏览器,但是将更多的内容放在了较新的浏览器和那些很可能在将来应用广泛的浏览器上,提供最新的知识和技巧。 所有示例代码中的语法都突出显示以方便阅读,练习题是根据CSS和HTML的实际应用归纳出来的,能够帮助您从一开始就采用正确的方式编写CSS。 建议您认真地完成每个练习,不只在我的指导下进行学习,而且要自己尝试书中介绍的属性和值。 0.2 本书读者对象 本书主要适合于那些想要学习如何使用CSS设置网站样式的人。CSS对于根据设计创建网站十分关键,因此设计人员尤其会从对CSS的扎实理解中获益。 为了使本书发挥出最大功效,使用HTML的经验会很有帮助。虽然书中提供了完成示例所需的HTML,但是如果您已经知道如何编写标记语言,那么可以更深刻地理解编写CSS来创建网站的最佳方法。 0.3 本书主要内容 本书涵盖了CSS Level 1、CSS 2、CSS 2.1和CSS 3规范。这些规范是由一个独立的非盈利性Internet标准组织--万维网联盟(World Wide Web Consortium,W3C)制定的,该组织设计并制定Internet文档的标准。本书大部分使用了CSS Level 2.1规范中定义的内容,在一些地方也使用了CSS 3来使内容更加有趣。 本书将指导您如何编写在大部分流行的Web浏览器上兼容的CSS。包括以下这些流行的浏览器: ●Windows平台的Microsoft Internet Explorer 8和9 ●Mac OS X、Windows和Linux平台的Mozilla Firefox 3.6 ●Mac OS X和Windows平台的Google Chrome 10 ●Mac OS X和Windows平台的Safari 5 ●Mac OS X、Windows和Linux平台的Opera 11 在编写本书时,上述浏览器占据了99%的Web浏览器市场份额。为了方便起见,本书还包括了完整的CSS特性参考,以及这些特性的浏览器兼容性提示。附录C中也包含一份CSS参考。 0.4 本书的结构 本书分为3个部分,下面介绍每个部分和每一章的内容。 第I部分:基础知识 在第1~4章中,您可以学到基于CSS的Web设计的基本原则。 ●第1章,“层叠样式表简介”:该章介绍CSS是什么以及它与设计内容样式的过时方式相比所具备的优势,回顾CSS的起源,并介绍如何使用HTML和CSS编写网页。该章最后讨论目前的主流Web浏览器。 ●第2章,“基本概念”:该章介绍CSS的组成和结构。该章讨论CSS规则、选择器、声明、属性和值以及CSS中可用的值类型。接下来讨论在HTML文档中包含CSS的各种方法,最后探讨良好的HTML的重要性。 ●第3章,“选择器”:第2章介绍最简单的选择器,该章则介绍整本书中会用到的其他基本选择器。 ●第4章,“层叠和继承”:该章介绍CSS最基本的概念--层叠,并讨论继承和优先级的工作方式。您将学到当规则冲突时,如何计算哪个样式生效,以及如何利用层叠。 第II部分:属性 在第5~13章中,您将学到用于操纵文档呈现的样式表属性。 ●第5章,“应用字体外观”:第II部分首先介绍使用CSS时最先完成的工作之一:样式化文本。该章介绍如何设置文本的字体和大小,以及如何使文本呈现为斜体、粗体或小号大写字母。 ●第6章,“操作文本显示”:第5章介绍样式化文本的基础知识,该章则介绍样式化文本的其他属性,例如调整文本行高、字母和单词之间的间距、文本对齐,以及添加下划线、上划线和删除线等。另外,还介绍如何使所有的文本变为全部小写、全部大写或首字母大写。 ●第7章,“背景颜色和图像”:该章介绍用于控制网页背景颜色和图像的CSS属性,以及控制背景位置、背景平铺,还有当滚动网页时背景是否在适当位置固定或者静态显示 ●第8章,“盒模型:控制外边距、边框、内边距、宽度和高度”:该章详细说明CSS设计的基本概念,也是创建布局的关键:盒模型。您将看到如何设置元素的外边距和内边距,以及边框、宽度和高度。 ●第9章,“浮动和垂直对齐”:第8章讨论了使用CSS创建布局的一些属性。该章将更进一步,介绍如何使用float和clear创建内容列。另外还将讨论vertical-align属性,该属性提供类似于上标或下标的效果,以及在表单元格中控制垂直对齐。 ●第10章,“样式化列表”:列表是标记内容的常用元素,可以创建网站导航。该章着眼于控制有序和无序列表呈现形式的CSS属性,介绍如何使用预定义的列表符号和自定义的列表符号,以及如何控制列表符号的位置。 ●第11章,“在文档中定位内容”:该章讨论创建布局的最后一种方法,即相对于其他页面元素或者视口本身定位内容,并介绍如何创建层叠内容的各个层。 ●第12章,“样式化表”:该章介绍CSS提供用来样式化HTML表的不同属性。该章中介绍的属性用于控制表单元格之间的间距、表标题的位置以及是否显示空单元格。 ●第13章,“创建完整的布局”:这是第II部分的最后一章。该章实践前面所学习的关于CSS的知识,使用HTML和CSS创建一个完整的布局。另外,该章还介绍一些更高级的CSS:使用自定义字体和设置渐变背景。 第III部分:高级CSS和可选择的媒体 第II部分介绍了一些基础知识。第III部分将介绍可以更细致地控制内容样式的高级技术,并展示如何为不同的媒体类型(例如打印机和手机)设置样式,还将介绍其他几个属性。 ●第14章,“高级选择器”:第3章介绍了用于编写CSS的基本选择器。该章将介绍在较老的浏览器(例如IE 6)中没有得到良好支持的高级选择器,它们具有强大的功能。本章介绍的选择器使您能够基于元素在文档中的位置和HTML属性的值样式化元素。 ●第15章,“打印样式”:该章介绍使用CSS提供样式表来创建Web文档的打印机可用版本的步骤。 ●第16章,“自定义鼠标指针”:该章演示如何使用CSS改变用户的鼠标指针、如何自定义鼠标指针,以及每种浏览器所支持的指针特性。 ●第17章,“控制透明度和可见性”:该章介绍如何使HTML元素透明甚至不可见,同时不影响它们周围的元素。 ●第18章,“为移动设备样式化内容”:该章介绍如何针对手机浏览器中的网页设置样式,为手机用户提供一种更好的体验。 ●第19章,“结束语”:作为最后一章,该章回顾本书介绍的内容,并对CSS的前景进行展望。 附录 本书的最后一部分是附录: ●附录A,“练习答案”:附录A给出每章结尾所有练习的答案。 ●附录B,“其他CSS资源”:附录B提供每章中包含的所有链接,以及其他可以拓展您的CSS知识的资源链接。 ●附录C,“CSS参考”:从CSS参考中可以查看每种浏览器支持哪些属性。 ●附录D,“CSS颜色”:附录D提供在CSS中可以使用的所有命名颜色的参考。 0.5 使用本书所需要的工具 要使用本书中的例子,需要以下工具: ●一些用于测试网页的Internet浏览器 ●文本编辑软件 设计网站内容需要针对不止一种类型的用户。您的一些用户可能使用与您不同的操作系统和浏览器。本书关注那些在编写本书时最为流行的浏览器。 第1章将叙述如何获得和安装每一种浏览器。本书中的示例需要使用文本编辑软件编写网页源代码。第1章中同样将介绍在Windows或者Macintosh操作系统上可用的一些文本编辑软件。 0.6 源代码 在练习本书中的示例时,读者可以手动输入所有的代码,也可以使用随书附带的源代码。本书中的所有源代码均可在或http://www.tupwk.com.cn/downpage站点下载。登录网站后,只需找到本书的标题(可以使用Search功能或标题列表)并单击显示本书详细内容的页面上的Download Code链接即可获取源代码。 由于很多书籍的名称类似,因此通过ISBN查找可能会更容易一些。本书的ISBN号是978-0-470-89152-0。 在下载源代码之后,只须使用最喜欢的解压缩工具对其进行解压缩即可。另一个途径是到Wrox代码下载主页面/dynamic/books/download.aspx,这里有本书及其他所有Wrox书籍的源代码。 0.7 勘误表 我们尽最大努力确保本书在叙述和代码中没有错误。然而,没有人是完美的,错误时有发生。如果读者在本书中发现什么错误,例如拼写错误或编码错误,我们将会非常感谢您能反馈给我们。通过将错误添加到勘误表中,您也许能为其他读者节约数小时的时间,也可以帮助我们提供更高质量的书籍。 请给wkservice@tup.tsinghua.edu.cn发电子邮件,如果您的意见是正确的,我们将在本书的后续版本中采用。 要找到本书的勘误表,可以登录网站,然后搜索本书的书名或者使用标题列表。然后,在本书的详细内容页面上,单击Book Errata链接。在这个页面上读者可以查看到所有已提交的、由Wrox的编辑发布的错误信息。也可以在页面找到一个完整的标题列表,这个列表包含了每本书的勘误表链接。 0.8 如果想参与讨论,可以加入P2P论坛,网址是。这些论坛是基于Web站点的系统,其作用是让读者发布与Wrox的书籍和相关技术有关的消息,并与其他读者和技术用户联络。这些论坛提供订阅功能,当读者感兴趣的主题发布时,论坛会通过电子邮件把这些消息发送给读者。Wrox的作家、编辑、其他行业专家及和您一样的读者都会出现在这些论坛上。 在中,读者将找到很多不同的论坛,这些论坛不仅能帮助读者阅读本书,还可以帮助读者开发自己的应用程序。要加入这些论坛,可按如下步骤操作: (1) 登录并单击Register链接。 (2) 阅读用途条款并单击Agree。 (3) 填写加入论坛所必需的信息和可选信息并单击Submit。 (4) 读者将收到一封电子邮件,该邮件告诉读者怎样验证账户并成功加入。 没有加入P2P论坛也可以阅读该论坛上的信息,但是如果希望发布自己的消息,则必须加入该论坛。 加入之后,就可以发布新消息或者回复其他用户发布的消息了。可以在任何时间阅读Web站点上的消息。如果希望某个论坛能将最新的消息通过电子邮件发送给您,则可以单击论坛列表中该论坛名称旁边的Subscribe图标。 要获得如何使用P2P论坛的更多信息,可以阅读P2P FAQ列表中的问题及其答复,这些问题与论坛软件的工作原理及很多与P2P和Wrox相关的常见问题有关。要阅读FAQ,可以单击任意P2P页面上的FAQ链接。