搜索
高级检索
高级搜索
书       名 :
著       者 :
出  版  社 :
I  S  B  N:
文献来源:
出版时间 :
Web标准之道
0.00    
图书来源: 浙江图书馆(由图书馆配书)
  • 配送范围:
    全国(除港澳台地区)
  • ISBN:
    9787115208972
  • 作      者:
    阿一等编著
  • 出 版 社 :
    人民邮电出版社
  • 出版日期:
    2009
收藏
编辑推荐
    半年前,在博客同这杆大旗下的感召下,一群园友聚到了一起,组成了博客园精华集编委会,酝酿着一出好戏。这期间,有过争执,但更多的是合作。长期的磨合,使得来自五湖四海的编委会成员互相熟悉,甚至无话不谈。这,也是一种财富。今天,博客园这坛好酒,在陈酿了五年之后,终于要开封了。这是一本关于Web标准、前端编程、网站优化的集大成之作,代表了博客园在Web领域的最高水准。所选文章大多是经验之谈,所谓技术人士的“心灵老鸭汤”:全书最有撼力的文章,莫过于Cat Chen的《欲练CSS,必先宫IE》;鸟食轩和老赵的文章偏实用,主要集中在Javascript领域;爆牙齿的《重构之美》系列,则有“采菊东篱下,悠然见南山”的意境。  妙笔生花之作不胜枚举,正所谓:备美酒兮以飨佳朋,身心俱醉。博客园的草根技术文集,博客园五年精华与沉淀,众多MVP倾情奉献。
展开
作者简介
    丁学,常年活跃于国内各大技术社区和各类线下活动,10多年的Web前端开发经验,对Web标准、SEO、用户体验等有深入研究。现从事交易平台开发,并致力于高性能Web开发技术的研究与推广。李蓓卿(网名棕熊),资深前端开发工程师。现任某知名国际游戏公司首席前端架构师,负责指导前端架构、Web用户交互、视觉设计与开发,并专注于front.endglobalization、front-endintemationalintegrating等前端开发新领域的研究。李战,阿里软件资深架构师,具有20年软件开发经验。在互联网软件开发,特别是Web标准及前端.1 avaScr.pt技术方面有较高的造诣,《悟透JavaScript》一书的作者。目前从事SaaS及云计算方面的研究工作。杨正祎(网名阿一),从事网页前端开发5年,关注前端技术开发、用户体验等前端技术领域。写有系列博客《IE的Web标准之道》,并有视频教程《阿一Web标准学堂》。主要关注的技术领域包括:前端开发技能、用户体验、用户行为研究、搜索引擎优化、Web标准设计等。爆牙齿,英来网创始人兼cEo。拥有9年前端设计、5年Web标准应用部署经验,完成方欣内网软件、卡当网、爆米花网、海词网的大团队Web标准应用部署。
展开
内容介绍
    《Web标准之道:博客园精华集》由博客园知名博主联手打造,涉及Web标准、HTML/CSS、JavaScript、SEO优化等诸多领域,内容新颖,观点独特,妙语连珠。《Web标准之道:博客园精华集》并不是一本由代码和技巧堆积而成的集合,更多的是探讨了Web设计中若干理念和心得,其中多为经验之谈。无论对于从事Web前端设计的人士,还是对于那些从事Web后端编程的技术人员,《Web标准之道:博客园精华集》都极具参考价值。其中时常有颠覆传统之作,个中滋味,请读者自行品味。
展开
精彩书摘
    Web 2.O带给我们更好的用户体验和更炫更酷的效果,JavaScript、Flash、silverlight都在跃跃欲试。目前应用最多的还是.JavaScript,所以你会经常看到很多Web 2.0网站有n多的Js和CSS。管理这些文件和如此多的代码,怎么能提升性能?以下就来讲讲我目前想到的一些问题。  JS和CSS引用时如何做到让请求进行并发下载  我们通过firebug,就会发现通过link和script标记在页面上的引用资源的每个请求都是以一个队列形式排队等候,一个资源下载完成后才会下载另外一个请求资源。它不像我们页面里面的图片(img标记和样式中引用的图片,样式里面引用的图片必须等到CSS文件加载完毕后才能下载图片),可以并发下载资源文件。YSlowr曾经对Web站点优化提出,尽量把CSS放在head中(样式突然在其他资源下载完毕后才展现,那太有戏剧性了),但是有点搞不明白,为什么浏览对CSS加载也是一个队列,难道怕在样式中有重名部分的冲突?YSlow还提出过把Js放在页面的尾部,那样的话整个页面下载Js资源差不多在onload完后。这点我深有体会。当你的script放在head中的时候,整个页面展现都得script一个个加载完毕再发生,这直接影响着Web性能,我想网站的速度比用户体验来得更重要吧,所以我们应该把Js放在尾部。那么是不是说直接放在尾部就好了呢?我想还有一点可以优化的,就是让其并发下载。那么如何解决这些资源的并发下载问题呢?<br>    我的方法是通过动态追加dom的方法(appendChild,动态追加link和script节点标记到head下)。使用这种方式,我们会发现我们的队列突然变成了百米冲刺,一声哨下,都冲向终点了(当然每个并发请求数肯定还是有一定限制的)。不过在IE下appendChild这种方法在window.onload事件中无法引用资源的函数,所以在IE下我用docoument.write去输出(IE下用document.write也是并发下载,而firefox是不行的)。
展开
目录
第一部分  HTML/CSS<br>谈谈网页设计中的字体应用(1)——Font Set  2<br>目前的网页还是以文字信息为主,而字体作为文字表现形式的最重要参数之一,自然有着相当重要的地位。可惜字体的重要性在很长时间内并没有得到足够的重视<br><br>谈谈网页设计中的字体应用(2)——serif和sans-serif  5<br>有多少人可以正确地使用它们呢?有多少人真正了解这两个通用字体族呢?本文将给您一个最清楚深入的剖析<br><br>谈谈网页设计中的字体应用(3)——实战应用篇?上  10<br><br>谈谈网页设计中的字体应用(4)——实战应用篇?下  14<br>纸上谈兵终是虚,让我们在战场上学习更多的技能<br><br>让CSS区分各种各样的input  19<br>input代表的实在太多了,但它们却不可能使用相同的样式,当我们不想添加成片的class时,试试这里的方法,四个解决方案,总有一个您需要的<br><br>一个常被问到的问题: 如何让层盖住select  25<br>IE 6依然是目前的主流浏览器,IE 6的select也一直“高高在上”,经常遇到的问题却成为一直以来的话题,本文将为您展现终极解决方案<br><br>兼容IE、Firefox的图片自动缩放的CSS  29<br>厌烦了写大量的JavaScript来控制一个个的图片,那么来用CSS(当您不能确定expression将会带来什么的时候,请谨慎使用)<br><br>第二部分  Web标准<br><br>Web标准页面设计——要注意的很多  32<br>本文是作者在做完一个大型项目之后的总结,提到了很多方面,相信这些知识点对所有走在Web标准化道路上的人都有很大的帮助<br><br>欲练CSS,必先宫IE  39<br>Win国天下,欲练CSS之人不在少数,大多不得要领,又或是走火入魔,全为IE所累。故曰:欲练CSS,必先宫IE<br><br>你有table/强迫症吗  42<br>如果你宫了IE然而还是觉得不得要领,那就该怀疑自己是不是有传说中的table强迫症了<br><br>根本不存在DIV + CSS布局这回事  44<br>看了上面的两篇文章,您是不是已经开始拿DIV+CSS布局来和table布局进行比较了?实际上,用于布局的只有CSS,根本不存在DIV+CSS布局这回事<br><br>慎用XHTML标签的自关闭写法  47<br>请注意:并不是所有标签都可以自关闭<br><br>Web标准不标准  49<br>一群会用table蹩脚布局的网页初学者嘲笑着那些对网页制作一窍不通的门外汉;而一群自认为Table布局无所不能的Table布局拥护者则嘲笑着那群用Table蹩脚布局的网页初学者;那些刚试着将几个页面中的TABLE换成DIV的所谓的Web标准设计者则嘲笑着那群死抱Table布局不放的table布局设计者;而一群焦头烂额终于在网站上贴上“W3C验证通过HTML网站”图标的自认高人的Web标准设计者则嘲笑着那群以为“DIV+CSS”就是Web标准的Web标准设计初学者;但是当我们把网页放在不同的浏览器中的时候,却发现我们全部都被“Web标准设计”嘲笑了<br><br>走在Web标准化设计的路上[唠叨先]  53<br>晕,现在才谈XHTML是不是太晚了点,这东东2004就火了一把了。其实,作为一项技术,没有火与不火的说法,也没有早与晚的说法。技术的生命力和火没有关系,不知道不理解没学会怎么都不晚<br><br>走在Web标准化设计的路上——振臂一呼:CSS,Stop!  55<br>近几年Web标准的推广变成了CSS的推广,CSS重要吗?我们不要CSS行不行?你找一大堆完全合理的理由……“行不行?”“行!”那就对了,我说不要你的CSS,我要他的CSS,又行不行?那么和XHTML相比,CSS重要在哪里<br><br>走在Web标准化设计的路上——对HTML/XHTML/XML/XSL的 一些认识  57<br>让我们从这里开始更深入地了解这些L们<br><br>走在Web标准化设计的路上——深入结构:理解h系列的不合理  60<br>HTML中的6个标题Tag(h1/h2/h3/h4/h5/h6),设计得是否合理?理由?解决办法<br><br>走在Web标准化设计的路上——深入结构:合理运用DIV和SPAN  66<br>把DIV看成是布局元素的人非常多,类似有“用div代替table进行布局”、“实战CSS+DIV布局”等,太多了,可是,DIV却不是布局元素,更可怕的是XHTML中根本不存在一个布局元素<br><br>走在Web标准化设计的路上深入结构:DIV再议以及对SPAN的迷惑  70<br>上篇文章中主要否定了使用DIV进行布局这种说法,提出DIV应当用于组织代码结构,现在我们再深入一点,DIV拥有语义吗<br><br>走在Web标准化设计的路上——复杂表单  74<br><br>走在Web标准化设计的路上[复杂表单:Reload]  77<br>一直有种说法:Table用于数据表,对于复杂表单,Table也是最好的选择,那么,到底复杂表单是否应该使用Table<br><br>走在Web标准化设计的路上[深入语义:列表和表格的抉择]  83<br>问题:XHTML中的列表Tag(ul/ol)和表格Tag(Table)区别何在?对于单列多行下的数据表,如何判断和选择<br><br>IE 7标准之道——1. 更丰富的CSS选择符  86<br>IE 7最令网页设计者兴奋的改进,便是支持更多、更丰富的CSS选择符,因此可以更方便地实现一些在IE 6中很难实现或者无法实现的效果。下面就让我们看看这些令人兴奋的、IE 7新支持的选择符<br><br>IE 7标准之道——2:引起页面布局混乱的祸首  98<br>页面乱了!谁搞的?让本文带您进入侦探之路<br><br>IE 7标准之道——3:歌剧院魅影bug  114<br>估计很多朋友都对这个华丽的“歌剧院魅影”有眼前一亮的感觉,其实这纯粹是一个标题党作为,这个Bug和歌剧院半毛钱关系都没有。这个bug在国际上比较获得认可的名字叫做——“IE 6重复文字Bug”。这是一个非常好玩但是又很令人摸不透的bug<br><br>IE 7标准之道——4:上去了!终于上去了  118<br>这是IE 6一个很著名且诡异的bug,很简单,也很容易重现。说白了就是:列表框(select)一直把DIV踩在脚底下。因为这个bug,不知道多少浮动菜单被破坏<br><br>IE 7标准之道——5:置换元素与行距bug  122<br>也许您没有听说过“置换元素”这个词,但这个问题您一定遇到过<br><br>IE 7标准之道——6:float双倍margin bug  129<br>很出名,很常见,很简单,如何修正呢?这里有最好的答案<br><br>IE 7标准之道——7:躲猫猫bug  134<br>我的文字不见了!躲哪里去了?IE开发团队都不知道,我们怎么可能知道?但是我们却有办法找出这个猫猫<br><br>IE 7标准之道——8:疯了的边框线  138<br>疯了,边框线算是彻底地疯掉了,这里却没有“为什么”,还好,我们有“怎么办”<br><br>第三部分  安全与优化<br><br>Web开发中你注意这些问题了吗(前台构架篇)  146<br>Web 2.0带给我们更好的用户体验和更炫、更酷的效果,Javascript、Flash、Silverlight都跃跃欲试。于是,我们网站中有了越来越多的JS和CSS的文件和代码。随着数量的增多,如何管理这些文件和这些代码、如何通过合理的方式来提升性能,已经是我们必须面对的问题<br><br>如何利用客户端缓存对网站进行优化  151<br>你的网站在并发访问量很大并且无法承受压力的情况下,你会如何优化?很多人会回答服务器缓存,其实这里有更好的方式—客户端才是我们真正的战场<br><br>如何提高网页的效率(上篇)——提高网页效率的14<br><br>条准则  155<br>网站最基本的东西是什么?——内容?SEO(搜索引擎优化)?UE(用户体验)?都不对!是速度<br><br>如何提高网页的效率(下篇)——使用Yslow掌握网站慢的原因  164<br>工欲善其事,必先利其器,上篇讲到网站最基本要素是速度,这一次将为大家带来很好用的工具,来协助我们提升网站的速度<br><br>关于Web应用程序安全的思考  169<br>没有绝对的安全,在Web上更没有。对于一个Web程序来讲,至少我们应该做到:自己(一个有经验的Web开发人员)攻不破这个系统。HTTP是开放的﹐因此谁都能向网络上公开的Web服务器发送request请求﹐要求一个URL,但可惜的是,Web服务器对于请求方的识别能力是很低的。使用URL进行安全管控的关键不是判断URL,而是判断每次request,检查每次request是否合法,以防止安全漏洞<br><br>SEO——我们是不是走错了路  194<br>多少公司把钱给了搜索引擎?多少人每天为SEO而工作?我们的工作是必要的吗?SEOer的存在是正确的吗?是不是在这条路上我们走进了迷途?存在即是合理,但我们依然可以停下来想一想,什么才应该是我们真正的追求<br><br>第四部分  JavaScript<br><br>JavaScript变量作用域及可访问性的探讨  200<br>永远的话题,永远的焦点,不过,你可能永远无法找到比这里更好的探讨<br><br>JavaScript中的this关键字  207<br><br>你不知道的JavaScript——“this”  215<br>两大高手共论“this”:太常用了,所有写过JavaScript的人都用过,以至于我们每个人都会认为自己很了解它,但是,我们真的了解吗?是不是在我们的理解之外,还有什么是我们没有想到的?看过这两篇文章后,你会发现一个不一样的“this”<br><br>JavaScript代码压缩、加密算法分析及工具实现  220<br>现在网上很多JavaScript都进行了压缩,同时代码变得不可直接阅读,也相当于一种简单的加密了,本文对其中一种典型的算法进行分析,并介绍如何解密代码和重新实现<br><br>JavaScript Table排序  230<br>网上也有很多其他的Table排序函数,有的基于数组,有的不够灵活。这个函数能在原有Table结构上加入功能,不用太多改动,基于OO的结构也易于使用(当然前提是对JS有一定认识)。这里只是满足基本需求,你可以自己动手扩展<br><br>设计模式在JavaScript中的应用(1)——MVC  236<br>采用了设计模式,程序无疑将具有更好的健壮性,可维护性以及可读性。所以,作为能工巧匠的您,也一定不会放过令程序蓬荜生辉的机会。让我们一起领略MVC模式<br><br>设计模式在JavaScript中的应用(2)——Observer  243<br>上篇我们讨论了Web开发中最重要的设计模式MVC,这一篇我们要讨论的是Observer模式。与MVC这样的大型设计模式相比,Observer模式则要轻量很多<br><br>JavaScript面向对象之属性实现  248<br>属性是对私有变量的一种保护手段,同时提供了像public变量一样的使用效果。近代的高级编程语言,(例如C#和Java)都支持属性这一特点,让我们在JavaScript里实现相同的功能<br><br>基于“甘露模型”的多重继承和接口实现,附带“准”桥接模式的验证  251<br>你是否听过“甘露模型”呢?是否觉得它在某些地方还不是特别完善?那么,在这篇文章里,让我们继续这个话题,让甘露来得更多一些<br><br>在JavaScript面向对象编程中使用继承(1)  257<br>前面几篇提到了使用JavaScript进行面向对象编程的一些内容,上一篇中实现了多重继承,在这里,让我们开始全面的了解“继承”在JavaScript中的应用,本篇列出了4种实现继承的方式<br><br>在JavaScript面向对象编程中使用继承(2)  261<br>本篇详细介绍了继承构造法,适用于:小规模类之间的继承,基类和子类的属性方法在5~8个,还有就是以构造函数中赋值方式导入类的属性和方法,而不用prototype导入的类编写习惯的时候<br><br>在JavaScript面向对象编程中使用继承(3)  264<br>原型继承法一样有它的缺点,仅适用于基类没有属性的情形,而优点也是相当明显:保持了子类构造函数的完整,可以不在里面添加任何和继承有关的代码,所有继承和重载操作都由对原型(prototype)的操作来完成<br><br>在JavaScript面向对象编程中使用继承(4)  267<br>本文介绍实例继承法,此种方法没有太经典的应用场景,不过对于基类比较复杂,而子类需要添加的属性方法很少,实例法还是显得挺清晰的。特别是对于Javacript对象动态扩展很熟悉的人,就更觉得明确了<br><br>在JavaScript面向对象编程中使用继承(5)  269<br>附加继承法,此方法由本系列作者独创,解决了上面3种经典继承方式的很多问题,使用起来异常强大,就像作者所说,适用场景为anywhere, anytime, anybody<br><br>挣脱浏览器的束缚(1)——前言  273<br>工欲善,必先利其器<br><br>挣脱浏览器的束缚(2)——别让脚本引入坏了事  276<br>Web应用中需要的脚本越来越多,传统的脚本引入方式已经越来越无法适应这种变化,在本篇中,老赵带我们一起看看如何完美解决脚本引入的问题<br><br>挣脱浏览器的束缚(3)——两个连接还不够“并行”  281<br>浏览器很傻,但是我们很聪明,于是,就有了突破浏览器双连接限制的方法<br><br>挣脱浏览器的束缚(4)——王道!动态添加script元素  285<br>突破双连接限制解决了一个很大的问题,但依然有更多的问题需要解决。动态添加script元素也同样有着很多的麻烦和问题,但这并不妨碍它成为“王道”,且听老赵慢慢道来<br><br>挣脱浏览器的束缚(5)——哭笑不得的IE Bug  289<br>在IE中,如果同时建立两个以上“连接状态”的连接,那么就很不幸地出现了问题:浏览器停止响应了!不过还好,浏览器很傻,JavaScript也很傻,我们可以很容易地骗过去
展开
加入书架成功!
收藏图书成功!
我知道了(3)
发表书评
读者登录

请选择您读者所在的图书馆

选择图书馆
浙江图书馆
点击获取验证码
登录
没有读者证?在线办证