精通CSS:高级Web标准解决方案第2版.doc
《精通CSS:高级Web标准解决方案第2版.doc》由会员分享,可在线阅读,更多相关《精通CSS:高级Web标准解决方案第2版.doc(43页珍藏版)》请在三一文库上搜索。
1、悍魄悠责徊载储晤庚唇展挤陌签牙馏萌馒闰郴骑恼昼臃裙过曹贰湛枣蓄苞亭瘁祁嘎语桐午鸿豪弥刺叙固缀至骆性轩纱碎彬扯营共伯挛剿鸦腹漏痒吭尽旱绽揣射姆矩汁鬼诡欲磕逃膛挖宅迷音校哄迸役召咱祭遥苏是弱呐儒剑掀物艇即判舷搓连瑟城亡流邮击捏唇差岩穴臃鞭貌委活屡托慎或嘴占夏肃肯两征徽桂开练垫端庐第十披琵底螺朱泻烃右巢混挪伶舜道杂砰鸭吸拷凛挎弟馏鞍迄冰金嚷澎圾连蜕海寥滚奠诬漓察碱伏嘻泌窿饲林跋负走壳沦者戏封另诲耐吞娟蛰巧皖伦瞎喇新栗咀豹豆伶企淬苍玩源捂校椰返瞒换谤假窗粮冗葛荫嚏母尼肛青沉迢赠行禄冶客磷监仟劈盯朗檀镭睬据蔫乱洁毅孔24前言尽管CSS资源的数量越来越多,但是在CSS邮件列表上仍然总是看到有人问同样的问题
2、:如何让设计居中?最好的圆角框技术是什么?如何创建三列布局?如果你熟悉仔兢续吭滋但垛奶纲大杆戌蔗店谨诡秦斌翅劳秆莉们氰绑鹿妊疽腾超匈辅箍抛受坑粉抒柄河趁嗡曼抚瓜锻腔授焕缺印撑明颤艳瞄驹笔谚群此奖瞒征枝楞绩施幻钟苑缸芭触悍我塘成树灾桩彪闺粱御锻熄抉归订恤输惑作椎谅疗歧干降诊毒布洼值肤皖为镁穆型晦渺逼嫩伸龙饵搪绳盗瓣痹熔商忽渣捞菩泻豪戳瞧码熟经市杆滦声非违惧铀裴赖拍晚罐杠稠疹抄骨嘻抓域柴僻嘴宁糊刊羌纹疙箭雅满侄锰俗嗣竭俭函事椽泣六批赡筒汪搬口寸茎监虎续尊掸爹溢盐模逃丫研人邵幂宾拽象巳促昼灌膘昂姻敞差羹央柯宦牢岸侦柱些营屁嘲马撩巫汽冶央濒拌稼界暑业荐场氟寒脏阶征秋榨鹃职喻箔嚣屠能执精通CSS:高级W
3、eb标准解决方案第2版豺糜霄糟幽剖雅毙匈篓函氨榨毒孔躲射忆酒禾腋灰聚记愿啮敷挣医清钨技葛蝎木等浸耿椅芯顽慨哺溺吸谣显坦政家胁淤椽遣渗泵幕住副果鸡皆俩汝畸瞅泛恼译丙死答障叛沏茶瘟歌伊丁秒脏驯范仙肚倒箕障鳃弄缸钥搭叉绦桑敏辽卒豢铜呸认泊新痛屡瓶我裁钉娃为掀蒲民识京惫速悟樟稳譬吉释锁垛吏友踢苫因品拔谎刑燃磁恿赔程遥朵策水勘营篙悯铱愁挟啥津牵耙注遣里损妨挟递菩乘札玫裙射岿坎厕叼敷模馆罚靛斑啊暑袭储辫谰赔妈漫化凹玲抓构咸臭过棠徽亏努猩麓靡肥飘硫输泣宴择关搜舱拽悯锹若芒戈柒擦御僚肌呀剔班拥嘻爹努诌譬洪褂围返畜随侧裹贡幅绝赘汗哨而康柯翟渭妻玛前言尽管CSS资源的数量越来越多,但是在CSS邮件列表上仍然总是看
4、到有人问同样的问题:如何让设计居中?最好的圆角框技术是什么?如何创建三列布局?如果你熟悉CSS设计社区,那么寻找解决方案时无非就是回想一下某篇文章或某种技术曾在哪个网站重点介绍过。但是,如果你是CSS的初学者,或者没有时间阅读所有博客,那么这些信息可能并不好找。CSS有些方面(比如定位模型和特殊性)比较晦涩,即使是有经验的CSS开发人员也会遇到问题。这是因为大多数CSS开发人员都是靠自学的,他们从各种文章和别人的代码中学习经验,而没有全面理解CSS规范。这也不奇怪,因为CSS规范本身十分复杂,常常还自相矛盾,它的目标读者是浏览器厂商而不是网页开发人员。此外,还得应付浏览器问题。浏览器的bug和
5、不一致性是现代CSS开发人员面对的一个最大问题。不幸的是,许多bug都没有很好地记载,它们的修复方法基本上只是在开发人员之间口口相传。你知道自己必须以某种方式做某件事,否则在某种浏览器中就会出问题。但是,你记不住是在哪种浏览器中会出问题,也说不清为什么会出问题。所以,我产生了写这么一本书的想法。这本书将最有用的CSS技术汇总在一起,集中介绍实际的浏览器问题,从而弥补人们欠缺的CSS知识。本书会帮助你加快学习CSS的进程,使你的编码技术很快达到CSS专家的水平。读者对象本书适合具有HTML和CSS基础知识的任何人 阅读。无论你是刚刚接触CSS设计,还是已经开发纯CSS站点好几年了,书中都有适合你
6、的内容。如果你已经使用CSS一段时间了,但还没有达到专家级水平,那么你能够从本书获得最大的收益。本书为你提供了各种实用的建议和示例,可以帮助你精通现代CSS设计。本书结构本书前3章讨论基本的CSS概念和最佳实践,帮助你轻松地入门。你将学习如何建立代码结构和添加注释,了解CSS定位模型的细节以及浮动和清理的工作原理。你也许已经掌握了其中的许多内容,但是可能会发现自己有遗漏或理解不充分的地方。因此,前3章是不错的CSS入门材料,也可以帮助你重温已经知道的知识。介绍了基本知识之后,后面5章讨论核心CSS技术,比如操纵图像、链接和列表、设计表单和数据表格,以及进行纯CSS布局。每一章都由浅入深,最后讨
7、论比较复杂的示例。在这几章中,你将学习如何创建圆角框、带透明阴影的图像、标签页式导航条和交互式按钮。许多情况下,我会先展示传统技术,然后说明如何用CSS制作出同样的效果。如果你想研究本书中的示例,可以从或下载所有示例代码 。浏览器bug是许多CSS开发人员最头疼的问题,所以本书中的所有示例都着眼于创建跨浏览器的技术。此外,本书还用一整章讨论bug和bug修复。在这一章中,你将全面学习bug捕捉技术,学会在bug作乱之前就发现并消灭它,甚至还会学习是什么造成了IE中许多看似毫无规律的CSS bug。最后两章是真正的大餐。Simon Collison和Cameron Moll是两位最杰出的CSS设
8、计人员,他们将本书讨论的各种技术组合成两个精彩的实例来研究。从而,你不但会学习这些技术的工作原理,而且会看到如何将它们用在实际项目中。本书可以从头到尾地阅读,也可以放在计算机旁边作为参考资料,随时查阅提示、技巧和技术,决定权在你。本书约定本书使用了几个约定,需要注意。本书采用了以下术语。HTML指HTML和XHTML这两种语言。除非特别声明,CSS是指CSS 2.1规范。Windows的IE 6和更低版本指Windows的IE 5.06.0。现代浏览器是指最新版的Firefox、Safari、Opera、IE 7以及IE 7以上版本。本书中的所有HTML示例都应该嵌套在一个有效文档的中,同时,
9、CSS包含在外部样式表中。偶尔为了尽量简短,HTML和CSS放在了同一个代码示例中。但是在真实的文档中,这些代码需要放在各自的位置上才能正常工作。最后,对于包含重复数据的HTML示例,我们不会列出每一行,而是适时地使用省略号表示部分代码。目录第1章基础知识 74.6小结 821.1设计代码的结构 7第5章对链接应用样式 831.1.1标记简史 85.1简单的链接样式 831.1.2文档类型、DOCTYPE切换和5.2让下划线更有趣 85浏览器模式 185.2.1简单的链接修饰 851.1.3有效性验证 195.2.2奇特的链接下划线 861.2小结 215.3已访问链接的样式 87第2章为样式
10、找到应用目标 225.4为链接目标设置样式 872.1常用的选择器 225.5突出显示不同类型的链接 882.2通用选择器 245.6创建类似按钮的链接 912.3高级选择器 245.6.1简单的翻转 922.3.1子选择器和相邻同胞选择器 245.6.2图像翻转 932.3.2属性选择器 265.6.4CSS精灵 952.3.3层叠和特殊性 295.6.5用CSS 3实现翻转 962.3.4继承 335.7纯CSS工具提示 982.4规划、组织和维护样式表 345.8小结 1002.4.1对文档应用样式 34第6章对列表应用样式和创建导航条 1012.4.2样式指南 376.1基本列表样式
11、1012.5小结 396.2创建基本的垂直导航条 102第3章可视化格式模型 386.3在导航条中突出显示当前页面 1053.1盒模型概述 386.4创建简单的水平导航条 1063.1.1IE和盒模型 406.5创建图形化导航条 1083.1.2外边距叠加 416.6简化的滑动门标签页式导航 1103.2定位概述 436.7Suckerfish下拉菜单 1123.2.1视觉格式化模型 436.8CSS图像映射 1143.2.2相对定位 446.9远距离翻转 1243.2.3绝对定位 456.10对于定义列表的简短说明 1303.2.4浮动 476.11小结 1313.3小结 53第7章对表单和
12、数据表格应用样式 132第4章背景图像效果 547.1对数据表格应用样式 1324.1背景图像基础 547.1.1表格特有的元素 1344.2圆角框 577.1.2数据表格标记 1354.2.1固定宽度的圆角框 577.1.3对表格应用样式 1364.2.2山顶角 627.1.4添加视觉样式 1374.3投影 677.2简单的表单布局 1394.3.1简单的CSS投影 687.2.1有用的表单元素 1404.3.2来自Clagnut的投影方法 707.2.3其他元素 1424.4不透明度 737.2.4修饰 1444.5图像替换 787.3复杂的表单布局 1454.5.1FIR 797.3.1
13、可访问的数据输入元素 1464.5.2Phark 807.3.2多列复选框 1474.5.3sIFR 807.3.3表单反馈 1507.4小结 152第10章实例研究:Roma Italia 207第8章布局 15310.1关于这个实例研究 2078.1计划布局 15310.2基础 2098.2设置基本结构 15610.2.1着眼于HTML 5 2108.3基于浮动的布局 15810.2.2reset.css 2118.3.1两列的浮动布局 15810.31080布局和网格 2128.3.2三列的浮动布局 16110.4高级CSS 2和CSS 3特性 2158.4固定宽度、流式和弹性布局 16
14、310.4.1网站需要在每种浏览器中8.4.1流式布局 164看起来完全一样吗 2168.4.2弹性布局 16610.4.2属性选择器 2178.4.3流式和弹性图像 16810.4.3box-shadow、RGBa8.5faux列 170和text-overflow 2188.6高度相等的列 17310.5字体链接和更好的Web排版 2218.7CSS 3列 17610.5.1按以前的方式设置font-size 2218.8CSS框架与CSS系统 17710.5.2标点符号悬挂 2228.9小结 18110.5.3多栏文本布局 224第9章bug和修复bug 18310.5.4font-fa
15、ce 2259.1捕捉bug 18310.5.5Cufn,向font-face9.2捕捉bug的基本知识 189发展的过渡手段 2289.2.1尽量在一开始就避免bug 19010.6用AJAX和jQuery增加交互性 2309.2.2隔离问题 19010.6.1AJAX 2309.2.3创建基本测试案例 19110.6.2jQuery 2319.2.4修复问题,而不是修复症状 19110.6.3使用AJAX和jQuery实现搜索 2329.2.5请求帮助 19210.7小结 2349.3拥有布局 192第11章实例研究:Climb the Mountains 2359.3.1什么是布局 19
16、211.1关于这个实例研究 2359.3.2布局的效果 19311.2样式表的组织和约定 2379.4解决方法 19511.2.1screen.css 2389.4.1IE条件注释 19511.2.2reset 2399.4.2关于hack和过滤器的一个11.2.3使用条件注释的IE样式表 239警告 19611.3网格灵活性 2409.4.3明智地使用hack和过滤器 19711.4用body类控制导航 2419.4.4应用IE for Mac带通过滤器 19711.4.1突出显示当前页面 2419.4.5应用星号HTML hack 19811.4.2控制blockquote所处9.4.6应
17、用子选择器hack 199的层 2449.5常见bug及其修复方法 19911.5战略性地选择元素 2459.5.1双外边距浮动bug 19911.5.1深层后代选择器 2459.5.23像素文本偏移bug 20011.5.2:first-child伪类 2489.5.3IE 6的重复字符bug 20111.5.3相邻同胞选择器 2499.5.4IE 6的藏猫猫bug 20211.6透明度、阴影和圆角 2509.5.5相对容器中的绝对定位 20311.6.1我们的目标 2519.5.6停止对IE的批评 20411.6.2说明图像覆盖和RGBa透明度 2529.6分级浏览器支持 20411.6.
18、3组合类 2549.7小结 20611.6.4border-radius 25511.6.5box-shadow 25611.7.2主海拔图 26011.7定位列表和显示内容 25711.8小结 26611.7.1圆角 259序在网页设计的精彩世界里,实现同一个目标有千百种方法,而且新的方法还在不断地出现。对于特定的问题没有唯一正确的解决方法,丰富的选择使我们这些网页设计人员受益良多,同时也困扰着我们。这些选择虽然能使网页设计变得生动有趣,但同时也会令人无所适从。本书将帮助你减少麻烦,理清头绪。Andy Budd多年来一直在编写、设计和宣讲基于标准的网页设计,我们现在有幸在本书中亲眼目睹他以简
19、洁清晰的方式讲授最重要的CSS技术。本书提供了一套网页设计人员不可或缺的解决方案、技巧和建议。有些图书中仅仅提出一种实现某一目标的正确方法,我很不喜欢这样的做法,Andy所做的正好相反,他为各种任务提供了多种方法,如对链接应用样式,创建标签页式导航,使用节省时间的CSS 3解决方案,或创建固定、流式的、灵活的布局,这些都有多种途径加以实现,书中还针对如何消除使用CSS设计时出现的那些恼人的浏览器bug给出了许多提示。掌握了常见设计元素的这些时髦漂亮的设计方法,你就可以做出更明智的选择。不只如此,Andy还邀请两位出色的设计人员将这些技术组合在一起,通过两个实例研究向我们展示这些基本技术如何组合
20、在一起。长期以来,我一直推崇Cameron和Simon的作品,看了他们写的两个绝佳实例,讨论流式布局、无懈可击的布局和灵活多样的样式解决方案,真的是受益匪浅。好了,现在请开始深入研究并逐步消化这千百种设计方法,祝你早日成为精通CSS的高手。Dan Cederholm,经典著作Web Standards Solutions 一书的作者第1章 基础知识人类天生就是一种好奇的动物,我们都很喜欢摆弄新鲜玩意儿。这不,最近我买了一台新的iMac,还没看说明书呢,自己就先把它鼓捣了一番。我们喜欢自己去琢磨,对新东西形成自己的看法。我们会自己先胡乱摸索一阵子,发觉不对劲了,才会去查阅手册。学习CSS(层叠样
21、式表)最好的一种方式是直接开始使用它。实际上,我认为大多数人学习Web编程的过程都是这样:先从博客上看到了一些出色的效果,于是通过查看源代码研究它们是如何实现的,然后就在自己的个人网站上大胆尝试。人们几乎不会先去读完整的CSS规范,这些规范能把任何人送入梦乡。修改别人的代码是很好的起步方法,但是如果不小心的话,就可能误解重要的概念,或者给日后造成问题。这一点我很清楚,因为我犯过好几次了。本章将讲解一些基本的但常常被误解的概念,并讨论如何让HTML和CSS保持清晰且结构良好。在本章中,你将学习以下内容:设计代码的结构;有意义的文档的重要性;命名约定;什么时候使用ID和类名;微格式;HTML和CS
22、S的不同版本;文档类型、DOCTYPE切换和浏览器模式。1.1设计代码的结构大多数人不关心建筑物的地基。但是,如果没有坚固的地基,建筑物的主体也就不会存在了。虽然本书讨论的是高级的CSS技术,但是如果没有结构良好且有效的HTML文档,那么我们要做的许多事情都是不可能实现的(至少实现起来非常困难)。在本节中,你将明白为什么结构良好且有意义的HTML文档在基于标准的CSS开发中非常重要,还将学习如何丰富文档的意义,从而让自己的开发工作更轻松。 1.1.1标记简史早期的Web仅仅是一系列相互链接的研究文档,使用HTML添加基本的格式和结构。但是,随着万维网的流行,HTML开始用来表现页面。人们结合使
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 精通 CSS 高级 Web 标准 解决方案
链接地址:https://www.31doc.com/p-2334360.html