响应式Web设计HTML5和CSS3实战.docx
- 文档编号:24046101
- 上传时间:2023-05-23
- 格式:DOCX
- 页数:31
- 大小:382.95KB
响应式Web设计HTML5和CSS3实战.docx
《响应式Web设计HTML5和CSS3实战.docx》由会员分享,可在线阅读,更多相关《响应式Web设计HTML5和CSS3实战.docx(31页珍藏版)》请在冰豆网上搜索。
响应式Web设计HTML5和CSS3实战
关于作者
译者序
前言
第1章HTML5、CSS3和响应式网页设计入门
∙1.1为什么智能手机很重要(而老版的IE不再重要)
∙1.2响应式设计一定是最佳选择吗
∙1.3响应式网页设计的定义
∙1.4为什么要在响应式设计上停滞不前
1.5响应式网页设计示例
∙1.5.1下载视口调试工具
∙1.5.2在线创意源泉
1.6为什么HTML5很优秀
∙1.6.1省时省力
∙1.6.2新增了语义化标签元素
1.7CSS3为响应式设计和更多创新奠定了基础
∙1.7.1底线:
CSS3不破坏任何东西
∙1.7.2CSS3如何解决日常设计问题
1.8看呐,不用图片
∙CSS3还带来了什么
∙1.9HTML5和CSS3现在就能用吗
∙1.10响应式网页设计不是灵丹妙药
∙1.11引导客户:
网站不必在所有浏览器中表现一致
∙1.12小结
第2章媒体查询:
支持不同的视口
∙2.1现在就能使用媒体查询
∙2.2为什么响应式设计需要媒体查询
∙2.2.1媒体查询语法
∙2.2.2媒体查询能检测那些特性
∙2.2.3用媒体查询改造我们的设计
∙2.2.4加载媒体查询的最佳方法
∙2.3我们的第一个响应式设计
∙2.3.1我们的设计是固定宽度的,不要惊讶
∙2.3.2响应式设计中要保证图片尽可能精简
∙2.3.3小视口下的内容剪切
∙2.4阻止移动浏览器自动调整页面大小
∙2.5针对不同视口宽度修正设计
∙2.6响应式设计中内容始终优先
∙2.7媒体查询只是必要条件之一
∙我们需要流动布局
∙2.8小结
第3章拥抱流式布局
∙3.1固定布局经不起未来考验
∙3.2为什么响应式设计需要百分比布局
∙3.3将网页从固定布局修改为百分比布局
∙3.3.1需要牢记的公式
∙3.3.2设置百分比元素的上下文
∙3.3.3必须时刻牢记上下文
∙3.4用em替换px
∙3.5弹性图片
∙3.5.1让图片随视口缩放
∙3.5.2为特定图片指定特定规则
∙3.5.3给弹性图片设置阈值
∙3.5.4超级全能的max-width属性
∙3.6为不同的屏幕尺寸提供不同的图片
∙设置自适应图片
∙把背景图片放在其他地方
∙3.7流动网格布局和媒体查询的默契配合
∙3.8CSS网格系统
∙使用网格系统快速搭建网站
∙3.9小结
第4章响应式设计中的HTML5
∙4.1HTML5的哪些部分现在就能用
∙4.1.1大多数网站可以用HTML5编写
∙4.1.2腻子脚本和Modernizr
∙4.2如何编写HTML5网页
∙4.2.1HTML5的精简之道
∙4.2.2HTML5标签的合理写法
∙4.2.3伟大的标签万岁
∙4.2.4HTML的废弃零件
∙4.3HTML5的全新语义化元素
∙4.3.1
∙4.3.2
∙4.3.3
∙4.3.4
∙4.3.5
∙HTML5的大纲结构算法
∙4.3.6
∙4.3.7
∙4.3.8
∙4.4HTML5结构元素的实际用法
∙网站的主体内容怎么办?
∙4.5HTML5的文本级语义元素
∙4.5.1
∙4.5.2
∙4.5.3
∙4.5.4在页面中应用文本层语义元素
∙4.6遵循WAI-ARIA实现无障碍站点
∙ARIA的地标角色
∙4.7在HTML5中嵌入媒体
∙4.8用HTML5的方法为页面添加视频或音频
∙4.8.1提供备用的媒体源文件
∙4.8.2针对老版本浏览器的备用方案
∙4.8.3
∙4.9响应式视频
∙4.10离线Web应用
∙4.10.1离线Web应用概述
∙4.10.2让网页可离线使用
∙4.10.3理解manifest文件
∙4.10.4页面被自动加载到离线缓存
∙4.10.5版本注释的用途
∙4.10.6离线访问网站
∙4.10.7离线Web应用的故障诊断
∙4.11小结
第5章CSS3:
选择器、字体和颜色模式
∙5.1CSS3给前端开发人员带来了什么
∙5.1.1InternetExplorer6到8对CSS3的支持
∙5.1.2使用CSS3设计和开发页面
∙5.2CSS规则解析
∙5.3私有前缀及其用法
∙5.4快速而有效的CSS技巧
∙5.4.1CSS3多栏布局
∙增加栏位间隙和分割线
∙5.4.2文字换行
∙5.5CSS3的新增选择器及其用法
∙5.5.1CSS3属性选择器
∙1.CSS3的子字符串匹配属性选择器
∙2.一个活生生的例子
∙5.5.2CSS3结构伪类
∙1.:
last-child选择器
∙2.nth-child选择器
∙3.理解nth规则的作用
∙4.否定(:
not)选择器
∙5.5.3对伪元素的修正
∙:
first-line对响应式设计来说好用吗
∙5.6自定义网页字体
∙5.6.1@font-face规则
∙5.6.2使用@font-face嵌入网页字体
∙5.7帮帮我,标题模糊怎么办
∙在响应式设计中使用自定义@font-face字体的注意事项
∙5.8新的CSS3颜色格式和透明度
∙5.8.1RGB颜色
∙5.8.2HSL颜色
∙5.8.3针对IE6、IE7和IE8提供备用颜色值
∙5.8.4透明通道
∙5.9小结
第6章用CSS3创造令人惊艳的美
∙6.1文字阴影
∙6.1.1HEX、HSL或RGB颜色都可以
∙6.1.2px、em或rem都行
∙6.1.3取消文字阴影
∙左上方阴影
∙6.1.4制作浮雕文字阴影效果
∙6.1.5多重文字阴影
∙6.2盒阴影
∙6.2.1内阴影
∙6.2.2多重阴影
∙6.3背景渐变
∙6.3.1线性背景渐变
∙分解线性渐变语法
∙6.3.2径向背景渐变
∙分解径向渐变语法
∙6.3.3重复渐变
∙6.4背景渐变图案
∙6.5CSS3的响应性
∙6.6组合使用CSS3属性
∙6.7多重背景图片
∙6.7.1背景图片大小
∙6.7.2背景图片位置
∙6.7.3背景属性的缩写语法
∙6.8更多CSS特性
∙6.9可缩放图标:
响应式设计中的完美选择
∙6.10小结
第7章CSS3过渡、变形和动画
∙7.1什么是CSS3过渡以及如何使用它
∙7.1.1过渡相关的属性
∙1.过渡的简写语法
∙2.在不同时间段内过渡不同属性
∙3.理解过渡调速函数
∙7.1.2响应式网站中的有趣过渡
∙7.2CSS3的2D变形
∙我们能做哪些变形
∙1.scale
∙2.translate
∙3.rotate
∙4.skew
∙5.matrix
∙6.transform-origin属性
∙7.3尝试CSS3的3D变形
∙7.3.1分析3D变形效果
∙7.3.23D变形尚未成熟
∙7.4CSS3动画效果
∙组合使用CSS3变形和动画
∙7.5小结
第8章用HTML5和CSS3征服表单
∙8.1HTML5表单
∙8.1.1理解HTML5表单中的元素
∙8.1.2placeholder
∙8.1.3required
∙8.1.4autofocus
∙8.1.5autocomplete
∙8.1.6list(及对应的datalist元素)
∙8.1.7HTML5的新输入类型
∙1.email
∙2.number
∙3.url
∙4.tel
∙5.search
∙6.pattern
∙7.color
∙8.1.8日期和时间输入类型
∙1.date
∙2.month
∙3.week
∙4.time
∙5.datetime和datetime-local
∙6.range
∙8.2如何给不支持新特性的浏览器打补丁
∙8.3使用CSS3美化HTML5表单
∙针对表单的CSS3伪类选择器
∙8.4小结
第9章解决跨浏览器问题
∙9.1渐进增强与优雅降级
∙现状
∙9.2该不该修复老版本IE
∙9.2.1统计数据(再看看世界的变化)
∙9.2.2个人选择
∙9.3前端的瑞士军刀:
Modernizr
∙9.3.1使用Modernizr辅助修正样式问题
∙9.3.2使用Modernizr让老版本IE支持HTML5元素
∙9.3.3给IE6、7、8追加min/max媒体查询功能
∙9.3.4使用Modernizr按需加载资源
∙9.4必要时将导航链接转换为下拉菜单
∙9.5高分辨率设备(未来趋势)
∙9.6小结
附录
∙附录1:
响应式Web设计(HTML5和CSS3)工具集
∙附录2:
响应式Web设计(HTML5和CSS3)范例网站
∙附录3:
本书涉及的HTML5及CSS3标准索引
∙附录4:
本书提到的电影索引
关于作者
BenFrain是一名具有十多年经验的网页设计师和前端工程师,直接与世界各地的客户和设计机构并肩工作。
同时他还是一名技术记者,定期为一些关注Mac平台、前沿科技、网页设计和航空技术的刊物撰稿。
在此之前,他曾是一名怀才不遇的(而且谦虚的)电视演员,毕业于索尔福德大学的媒体与表演专业。
他写了四部(个人认为)同样被低估的剧本,而且始终心怀能卖出一部的信念(尽管不像最初那么强烈了)。
工作之余,在身体(和妻子)允许的情况下,他喜欢玩室内足球。
他的个人网站是,Twitter地址是
首先要感谢网络社区。
没有大家集思广益的才智、慷慨大方的文档和开放共享的解决方案,我不可能在互联网行业做出现在这点还稍稍令我自豪的事情。
其次,我要感谢响应式网页设计之父EthanMarcotte。
他和我从未谋面或交谈过,但他的方法论现在每时每刻都在影响着我制作网页的方法。
毫无疑问,假如有哪些地方造成读者对响应式方法论的误解,那都要怪我自己表达不好。
最后,感谢我的家人。
看过(同样被低估的)《义海倾情》1的人都知道:
“血浓于水。
其他人都是陌生人。
”
1《义海倾情》WyattEarp:
。
——译者注
译者序
蒂姆·伯纳斯-李在1991年制作并发布了第一个网站,如今刚刚过去21个年头。
在这21年里,计算机和互联网快速发展,这个世界的面貌也日新月异。
在这个过程中,网页设计从无到有,从简单渐至专业,从可有可无变为广受关注。
网页设计方法也在跟随时代不断创新,从最初简单的文字排版,到表格布局,再到DIV+CSS,直到现在广为流行的网格布局、流式布局等,设计师和开发者们一直致力于为全球网民提供更好的设计观感和使用体验。
iOS和Android的发布,掀起了移动互联网的浪潮,智能手机、平板电脑、智能家电等新设备层出不穷,我们的世界变得更加精彩纷呈。
但这却给网页设计带来了新的挑战,在面对形形色色的终端设备、千差万别的屏幕分辨率,以及良莠不齐的网络连接质量时,目前的设计方法显得力不从心。
我们无法预料用户的设备和网络状况,更不可能为每种设备专门设计一套网站,那么在移动互联网时代,如何创新为用户提供更好的设计和体验呢?
2010年5月25日,伊桑·马科特发表在AListApart上的一篇文章,为我们打开了思路。
在这篇名为《ResponsiveWebDesign》的文章中,伊桑·马科特将三种已有的技术整合在一起,提出了响应式网页设计的概念,用以解决我们当前遇到的设计难题。
响应式网页设计概念一经提出就大受欢迎(当然也有争议),很多设计师和开发者纷纷实践并完善这种理念。
两年多的时间里,涌现出了越来越多的响应式网站,针对响应式设计的工具和资源也日渐丰富。
截至目前,响应式设计是使用一套代码为各类设备提供良好设计效果和使用体验的最佳设计方法。
你肯定对响应式设计有所耳闻,也可能看过一些响应式设计的技巧或相关文章,但它们都零零散散不成体系,无法让你真正理解并掌握响应式设计,也无法指导你立即开始响应式设计的实践。
这本书将会带你系统地学习响应式网页设计的方法论,书中涵盖了响应式设计的思想、方法、工具、技巧、HTML5、CSS3、相关资源,以及针对老版本浏览器的兼容方案等内容,并以实际案例循序渐进地讲解了如何创建一个优雅高效易于维护的响应式网站。
希望这些正是你所需要的。
“得功有法,秉一应万”,这是太极拳修炼的目标,我想也可以作为响应式设计的目标。
修炼好响应式设计这门功夫,能够让你安然自在,以一应万。
元芳,潜心修炼吧!
感谢裕波、杨海玲老师及朱巍老师,让我有机会翻译本书。
非常感谢图灵各位编辑的辛勤工作,尤其感谢李松峰老师的细心指导。
另外要感谢图灵社区,我在这里受益匪浅。
最后,感谢我的老婆,本书的翻译离不开她的支持、监督与参谋。
我在翻译本书时尽力保证信与达,雅则不敢奢望。
翻译中的错误在所难免,欢迎广大读者指正。
如果对本书有任何意见、建议或想法,请发送邮件至wyqbailey@或反馈至图灵社区。
王永强2012年10月成都
前言
如果你想给自己的网站做一个单独的“手机版”,请三思而后行!
响应式网页设计提供了一种设计方法,可以使同一网站在智能手机、桌面电脑,以及介于这两者之间的任意设备上完美显示。
这种方法能够根据用户的屏幕尺寸,合理地为现有及将来的各种设备提供最佳的浏览体验。
本书提供了一整套方法,用来将一个现有的固定宽度的网站设计变成响应式的。
此外,本书应用HTML5和CSS3提供的最新最有用的技术,扩展了响应式网页设计的方法论,以便网站更简洁、更易于维护。
本书还讲解了编写和发布代码、图片、文件的最佳实践。
只要你懂HTML和CSS,你就能制作响应式网站。
本书内容
第1章,HTML5、CSS3和响应式网页设计入门,定义了什么是响应式网页设计,展示了一些响应式设计的网站示例,重点强调了使用HTML5和CSS3的优势。
第2章,媒体查询:
支持不同的视口,讲解了什么是媒体查询,如何实现媒体查询,以及如何针对设备能力匹配CSS样式,将其应用于任意设计。
第3章,拥抱流式布局,讲解了流式布局的优点,以及如何将一个现有的固定宽度设计轻松地转换为流式布局,怎样使用CSS框架快速搭建响应式网页。
第4章,响应式设计中的HTML5,探讨了使用HTML5技术的诸多好处,比如更简洁的代码、语义化标签、离线存储,以及无障碍网页应用辅助技术。
第5章,CSS3:
选择器、字体和颜色模式,展示了CSS3选择器的强大威力,可以让你轻松地指定和改变任何元素。
还讲解了通过@font-face声明来使用漂亮的网络字体,另外讲解了新的CSS3颜色模式如RGB(A)和HSL(A)。
第6章,用CSS3创造惊艳的美,展示了如何使用纯粹的CSS3代码实现文字阴影、盒阴影和渐变效果。
还涵盖了如何使用多重背景图片,以及如何通过字体文件创建图标。
第7章,CSS3的过渡、变形和动画,讲解如何仅使用CSS3来创建和转换屏幕上的元素,并制作动画效果。
第8章,用HTML5和CSS3征服表单,阐述了在所有设备上(从最新的智能手机到桌面版浏览器)都能良好运行的跨浏览器表单开发技巧。
第9章,解决跨浏览器问题,讲解了如何保证老版本的InternetExplorer可响应,如何将一组链接修改成移动设备上的一个菜单,如何为高分辨率显示器提供不同内容,以及如何使用Modernizr框架分条件地加载资源文件。
准备工作
你必须对HTML和CSS很熟悉。
有一点JavaScript基础会很有帮助。
良好的电影品味也很有益处。
本书读者
你是否正在开发两套网站,一套给移动设备,一套给大显示器?
又或者你已听说过“响应式网页设计”但却不确定如何将HTML5、CSS3和响应式设计融合在一起?
如果是,那么本书可以让你在所有竞争对手之前,将你的网站提升到一个更高层次。
本书面向那些正在使用HTML4.01和CSS2.1开发固定宽度网站的网页设计师和开发人员,讲解了如何使用HTML5和CSS3制作可适应任意屏幕尺寸设备的响应式网站。
本书约定
本书中使用几种不同的文字样式来区分不同类型的信息,具体约定如下。
正文中的代码使用如下格式:
“HTML5接受宽松语法,例如
”
代码段使用如下格式:
—endofnavigation-->
—endofheader-->
当要专门强调代码块中的某一部分时,则对相关行或条目使用粗体格式:
[编者注:
网页格式无法实现此效果。
]
#wrapper{margin-right:
auto;margin-left:
auto;width:
96%;/*最外围的DIV*/
}
#header{margin-right:
10px;margin-left:
10px;width:
97.9166667%;/*940÷960*/}
新术语,以及重要词汇也使用粗体。
文中提到的那些菜单、对话框中的文字,会使用粗体或大写来标注,如:
“导航按钮不再做背景色切换,内容区的THESESHOULDHAVEWON按钮和侧边栏的详细信息按钮消失了,而字体也与设计文档相差甚远。
”
!
这个图标表示警告或重要提醒。
¥这个图标表示提示或技巧。
读者反馈
我们时刻欢迎你的反馈,以便了解你对本书的看法。
你的宝贵意见有助于我们提升书籍的质量。
一般的阅读反馈,可直接发送电子邮件至feedback@,请在邮件标题中注明书名。
如果你在某个领域内有专长且有兴趣编写相关书籍,请访问
客户支持
现在你已是Packt图书的尊贵读者了,我们有一系列的售后支持,保证你的消费物有所值。
错误
尽管我们已经对书籍作了仔细校对以保证内容准确,但错误在所难免。
如果在书中发现任何的文字或代码错误,非常欢迎你将这些错误提交给我们,这样可以帮助我们在后续版本中改正错误,避免其他读者产生不必要的误解。
一旦发现错误,请登录submissionform(提交勘误)链接,然后填写具体的错误信息即可。
只要你提交的勘误通过验证,勘误信息就会上传到我们的网站,或者追加到已有勘误列表中,显示在该书的勘误页面。
盗版
对所有媒体来说,互联网盗版都是一个棘手的问题。
Packt很重视版权保护。
如果你在互联网上发现我们公司出版物的任何非法复制品,请及时告知我们相关网址或网站名称,以便我们采取补救措施。
如果发现可疑盗版材料,请通过copyright@联系我们。
对您帮助我们保护作者权益、确保我们持续提供高品质图书的行为表示敬意。
问题
如果你对本书有任何问题,请联系questions@,我们会尽力解决。
第1章HTML5、CSS3和响应式网页设计入门
直到最近,网站设计普遍还在使用固定宽度(如960像素),以期给所有终端用户带来较为一致的浏览体验。
这种固定宽度设计在笔记本电脑上显示刚刚好,而在高分辨率显示器上却会在两边多出些空白。
但现在有了智能手机。
苹果公司的iPhone第一次带给我们真正意义上易用的手机上网体验,之后其他公司纷纷效仿。
现在人们可以舒服地使用手机上网冲浪,不用再像过去那样需要有“挑圆片”[1]世界冠军一样的灵活拇指,才能在小屏幕上看看网页。
此外,消费者在家中上网时优先使用小屏幕设备(如平板电脑、上网本)正成为趋势。
一个不争的事实是,使用小屏幕设备上网的人数正在以前所未有的速度增长。
与此同时,27英寸和30英寸的大显示器也在快速普及。
上网设备之间的尺寸差距与日俱增。
[1]一种游戏,http:
//en.wikipedia.org/wiki/Tiddlywinks。
——译者注
幸运的是,面对不断发展的浏览器和上网设备,我们有可行的解决方案。
采用HTML5和CSS3技术的响应式网页设计,可以使网站兼容多种设备和屏幕。
而这种方法的最佳之处,在于不需要什么服务器端方案,也完全可以实现。
本章内容:
∙支持小屏幕设备的重要性
∙什么是移动网站设计
∙什么是响应式网页设计
∙优秀响应式网页实例赏析
∙视口和屏幕的区别
∙安装和使用修改视口的浏览器扩展程序
∙使用HTML5编写更简洁的标记
∙使用CSS3解决常见的设计问题
1.1为什么智能手机很重要(而老版的IE不再重要)
虽然统计数据一般仅用作粗略参考,但来自的统计数据却值得注意。
从2010年7月到2011年7月的12个月中,全球手机浏览器的使用量从2.86%上涨至7.02%。
InternetExplorer6的使用率则是从8.79%下降到3.42%。
到2011年7月,InternetExplorer7的使用率也降到了5.45%。
如果客户老是要求:
“我们的网站必须兼容IE6和IE7!
”你可以反驳说:
“我们应该把精力花在更有价值的地方。
”用手机上网的人比用台式机和笔记本中的IE6或IE7上网的人多多了。
你可以听到全球前端开发工程师震耳欲聋的欢呼声!
越来越多的人使用小屏幕设备上网,这些设备上的浏览器在设计时都考虑到了如何显示好现有网站。
手机浏览器会将一个标准网页缩小至与设备可视区域(标准技术术语叫做“视口”)恰好匹配。
然后用户在自己感兴趣的内容区域上放大浏览。
这样看起来已经挺好了,那作为前端设计师和工程师的我们,为什么还要在这上面继续优化呢?
在iPhone或Android手机上浏览的网页越多(如上图所示的那样),就越能深刻体会到为什么我们还需要继续优化。
为了看清楚页面内容,需要不停地放大、缩小页面,然后为了看到视口外的文字,再左、右拖动,结果一不小心点了一个链接,你说讨厌不讨厌?
我们当然可以做得更好!
1.2响应式设计一定是最佳选择吗
如果预算充足且形势需要,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 响应 Web 设计 HTML5 CSS3 实战