編輯推薦
推薦一
這是一本關於web標準、前端編程、網站最佳化的集成大作,代表了部落格園在web領域的最高水準。
所選文章大多是經驗之談,所謂技術人士的“心靈老鴨湯”;全書最有撼力的文章,莫過於Cat chen的《欲練CSS,必先宮IE》;鳥食軒和老趙的文章偏實用,主要集中在Javascript領域,爆牙齒的《重構之美》系列,則有“採菊東籬下,悠然見南山”的意境。
推薦二
《Web標準之道:部落格園精華集》由人民郵電出版社出版。半年前,在部落格同這桿大旗下的感召下,一群園友聚到了一起,組成了部落格園精華集編委會,醞釀著一齣好戲。這期間,有過爭執,但更多的是合作。長期的磨合,使得來自五湖四海的編委會成員互相熟悉,甚至無話不談。這,也是一種財富。今天,部落格園這壇好酒,在陳釀了五年之後,終於要開封了。這是一本關於Web標準、前端編程、網站最佳化的集大成之作,代表了部落格園在Web領域的最高水準。所選文章大多是經驗之談,所謂技術人士的“心靈老鴨湯”:全書最有撼力的文章,莫過於Cat Chen的《欲練CSS,必先宮IE》;鳥食軒和老趙的文章偏實用,主要集中在Javascript領域;爆牙齒的《重構之美》系列,則有“採菊東籬下,悠然見南山”的意境。 妙筆生花之作不勝枚舉,正所謂:備美酒兮以饗佳朋,身心俱醉。
內容簡介
無論對於從事Web前端設計的人士,還是對於那些從事Web後端編程的技術人員,本書都極具參考價值。其中時常有顛覆傳統之作,箇中滋味,請讀者自行品味。
目錄
第一部分HTML/CSS
談談網頁設計中的字型套用(1) Font Set ......................................... 1
目前的網頁還是以文字信息為主,而字型作為文字表現形式的最重要參數之一,自然有著相當重要的地位。可惜字型的重要性在很長時間內並沒有得到足夠的重視……
談談網頁設計中的字型套用(2) serif 和sans-serif.............................. 4
有多少人可以正確的使用它們呢?有多少人真正了解這兩個通用字型族呢?讓本文給您一個最清楚深入的剖析吧
談談網頁設計中的字型套用(3) 實戰套用篇·上 .................................. 9
談談網頁設計中的字型套用(4)實戰套用篇·下 ................................. 13
紙上談兵終是虛,讓我們在戰場上學習更多的技能
讓CSS區分各種各樣的<input> ................................................. 18
<input>實在太多了,但它們卻不可能使用相同的樣式,當我們不想添加成片的class時,試試這裡的方法吧,四個解決方案,總有一個您需要的
一個常被問道的問題:如何讓層蓋住<select>..................................... 25
IE6依然是目前的主流瀏覽器,IE6的<select>也一直“高高在上”,經常遇到的問題卻成為一直以來的話題,本文將為您展現終極解決方案
兼容IE, Firefox 的圖片自動縮放的CSS ........................................ 29
厭煩了寫大量的JavaScript來控制一個個的圖片?那么來用CSS吧!(當您不能確定expression將會帶來什麼的時候,請謹慎使用)
第二部分WEB標準
web標準頁面設計――要注意的很多.............................................30
本文是作者在做完一個大型項目之後的總結,提到了很多方面,相信這些知識點對所有走在WEB標準化道路上的人都有很大的幫助
欲練CSS ,必先宮IE ......................................................... 36
Win國天下,欲練CSS之人不在少數,大多不得要領,又或是走火入魔,全為IE所累。故曰:欲練CSS,必先功IE
你有<table/> 強迫症嗎? ...................................................39
如果你宮了IE然而還是覺得不得要領,那就該懷疑自己是不是有傳說中的table強迫症了
根本不存在DIV + CSS布局這回事 ............................................. 41
看了上面的兩篇,您是不是已經開始拿DIV+CSS布局來和table布局進行比較了?實際上,用於布局的只有CSS,根本不存在DIV+CSS布局這回事
慎用XHTML 標籤的自關閉寫法................................................ 44
請注意:並不是所有標籤都可以自關閉!
web標準不標準 ..............................................................46
一群會用table蹩腳布局的網頁初學者嘲笑著那些對網頁製作一竅不通的門外漢;而一群自認為table布局無所不能的table布局擁護者則嘲笑著那群用table蹩腳布局的網頁初學者;那些剛試著將幾個頁面中的table換成div的所謂的web標準設計者則嘲笑這那群死抱table布局不放的table布局設計者;而一群焦頭爛額終於在網站上貼上“W3C驗證通過HTML網站”圖示的自認高高人的web標準設計者則嘲笑這那群以為“DIV+CSS”就是web標準的web標準設計初學者;但是當我們把我們的網頁放在不同的瀏覽器中的時候,卻發現我們全部都被“WEB標準設計”嘲笑了……
走在Web標準化設計的路上[嘮叨先] ............................................50
暈,現在才談XHTML是不是太晚了點,這東東2004就火了一把了。其實,作為一項技術,沒有火與不火的說法,也沒有早與晚的說法。技術的生命力和火沒有關係,不知道不理解沒學會怎么都不晚
走在Web標準化設計的路上[振臂一呼:CSS, Stop! ] ...............................52
近幾年WEB標準的推廣變成了CSS的推廣,CSS重要嗎?我們不要CSS行不行?你找一大堆完全合理的理由……“行不行?”“行!”那就對了,我說不要你的Css,我要他的Css,又行不行?那么和xhtml相比,Css重要在哪裡?
走在Web標準化設計的路上[深入結構:理解h系列的不合理] ........................54
問題:HTML中的六個標題Tag(h1/h2/h3/h4/h5/h6),設計是否合理?理由?解決辦法?
走在Web標準化設計的路上[對HTML/XHTML/XML/XSL的一些認識] .................... 59
讓我們從這裡開始更深入的了解這些L們
走在Web標準化設計的路上[深入結構:合理運用div和span。] ..................... 62
把div看成是布局元素的人非常多,類似有“用div代替table進行布局”、“實戰CSS+DIV布局”等等等等,太多了,可是,div卻不是布局元素,更可怕的是XHTML中根本不存在一個布局元素……
走在Web標準化設計的路上[深入結構:div再議以及對span的迷惑。] ............... 66
上篇文章中主要否定了使用div進行布局這種說法,提出div應當用於組織代碼結構,現在我們再深入一點,div擁有語義嗎?
走在Web標準化設計的路上[複雜表單] ..........................................70
走在Web標準化設計的路上[複雜表單:Reloaded] .................................73
一直有種說法:table用於數據表,對於複雜表單,table也是最好的選擇,那么,到底複雜表單是否應該使用table?
走在Web標準化設計的路上[深入語義:列表和表格的抉擇。] ........................ 80
問題:XHTML中的列表Tag(ul/ol)和表格Tag(table)區別何在?對於單列多行下的數據表,如何判斷和選擇?
IE7標準之道——1:更豐富的CSS選擇符........................................ 85
IE7最令網頁設計者興奮的改進,便是支持更多、更豐富的CSS選擇符,使得IE7可以更方便的實現一些在IE6很難實現或者無法實現的效果。下面就讓我們看看這些令人興奮的、IE7新支持的選擇符
IE7標準之道——2:引起頁面布局混亂的禍首 .................................... 97
頁面亂了!誰搞的?讓本文帶您進入偵探之路……
IE7標準之道——3:歌劇院魅影bug.............................................116
估計很多的朋友都對這個華麗的“歌劇院魅影”有眼前一亮的感覺,其實這純粹是一個標題黨作為,這個bug和歌劇院半毛錢關係都沒有。這個bug在國際上比較獲得認可的名字叫做——“IE6重複文字bug”。這是一個非常好玩但是有很令人摸不到頭腦的bug
IE7標準之道——4:上去了!終於上去了! ....................................... 120
這個IE6一個很著名且詭異的bug,很簡單,也很容易重現,說白了就是:列表框(select)一直把div踩在腳底下。因為這個bug,不知道多少浮動選單被破壞
IE7標準之道——5:置換元素與行距bug........................................ 125
也許您沒有聽說過“置換元素”這個詞,但這個問題您一定遇到過
IE7標準之道——6:float雙倍margin bug ..................................... 132
很出名,很常見,很簡單,如何修正呢?這裡有最好的答案
IE7標準之道——7:躲貓貓bug ................................................138
我的文字不見了!躲哪裡去了?IE開發團隊都不知道,我們怎么可能知道?但是我們卻有辦法找出這個貓貓
IE7標準之道——8:瘋了的框線線 .............................................143
瘋了,框線線算是徹底的瘋掉了,這裡卻沒有“為什麼”,還好,我們有“怎么辦”
第三部分 安全與最佳化
Web開發中你注意這些問題了嗎?(前台構架篇) ................................. 150
Web2.0帶給我們更好的用戶體驗和更炫更酷的效果,Javascript,Flash, Silverlight都是躍躍欲試。於是,我們網站中有了越來越多的JS和CSS的檔案和代碼,隨著數量的增多,如何管理這些檔案和這些代碼、如何通過合理的方式來提升性能,已經是我們必須面對的問題
如何利用客戶端快取對網站進行最佳化 .......................................... 155
你的網站在並發訪問很大並且無法承受壓力的情況下,你會選擇如何最佳化?很多人會回答伺服器快取,其實這裡有更好的方式,客戶端才是我們真正的戰場
如何提高網頁的效率(上篇)——提高網頁效率的14條準則 ........................ 159
網站最基本的東西是什麼?——內容?SEO(搜尋引擎最佳化)?UE(用戶體驗)?都不對!是速度!
如何提高網頁的效率(下篇)——UseYSlow to know why your web Slow ............. 168
工欲善其事,必先利其器,上篇講到網站最基本是速度,這一次將為大家帶來很好用的工具,來協助我們提升網站的速度
關於web應用程式安全的思考.................................................. 174
沒有絕對的安全,在WEB上更沒有,那么對於一個WEB程式來講,至少我們應該做到:如果讓自己(一個有經驗的web開發人員)來攻擊這個系統,不能做到。http協定是開放的﹐因此誰都能向網路上公開的web伺服器傳送request請求﹐要求一個URL,而可惜的是,web伺服器對於請求方的識別能力是很低的。使用URL進行安全管控的關鍵不是判斷URL,而是判斷每次request,檢查每次request是否合法,以防止安全漏洞
SEO--我們是不是走錯了路?................................................203
多少公司把錢給了搜尋引擎?多少人每天為SEO而工作?我們的工作是必要的嗎?SEOer的存在是正確的嗎?是不是在這條路上我們走進了迷途?存在即是合理,但我們依然可以停下來想一想,什麼才應該是我們真正的追求……
第四部分 JavaScript
JavaScript變數作用域及可訪問性的探討 ......................................205
永遠的話題,永遠的焦點,不過,你可能永遠無法找到比這裡更好的探討
Javascript中的this關鍵字..................................................212
你不知道的JavaScript – “this” ........................................... 221
兩大高手共論“this”:太常用了,所有寫過JavaScript的人都用過,以至於我們每個人都會認為自己很了解它,但是,我們真的了解嗎?是不是在我們的理解之外,還有什麼是我們沒有想到的呢?看過這兩篇文章後,你會發現一個與你原來的理解所不一樣的“this”
JavaScript代碼壓縮、加密算法的破解分析及工具實現 ...........................227
現在網上很多JavaScript都進行了壓縮,同時代碼變得不可直接閱讀,也相當於一種簡單的加密了,本文對其中一種典型的算法進行分析,介紹如何解密代碼以及重新實現的壓縮工具算法
JavaScript Table排序.......................................................237
網上也有很多其他的table排序函式,但有的是基於數組,有的不夠靈活。這一個能在原有table結構上加入功能,不用太多改動,基於OO的結構也易於使用(當然前提是對js有一定認識)。這裡只是滿足基本需求,你可以自己動手擴展
設計模式在JavaScript中的套用(1) – MVC ..................................... 244
採用了設計模式,無疑您的程式將具有更好的健壯性,可維護性以及易讀性。所以,作為能工巧匠的您,也一定不會放過令程式蓬蓽生輝的機會。讓我們一起領略MVC模式
設計模式在JavaScript中的套用(2) – Observer ................................ 252
上篇我們討論了Web開發中最重要的設計模式MVC,這一篇我們要討論的是Observer模式,與MVC這樣的大型設計模式相比,Observer模式則要輕量很多
JavaScript面向對象之屬性實現 ..............................................257
屬性是對私有變數的一種保護手段,同時提供了像public變數一樣的使用效果,近代的高級程式語言例如C#和Java都支持了屬性這一特點,讓我們在JavaScript里實現相同的功能吧
基於“甘露模型”的多重繼承和接口實現,附帶“準”橋接模式的驗證 ................ 260
你是否聽過“甘露模型”呢?那你是否覺得它在某些地方還不是特別完善?那么,在這篇文章里,讓我們繼續這個話題,讓甘露來得更多一些吧
在JavaScript面向對象編程中使用繼承(1) ..................................... 267
在JavaScript面向對象編程中使用繼承(2) ..................................... 272
在JavaScript面向對象編程中使用繼承(3) ..................................... 274
在JavaScript面向對象編程中使用繼承(4) ..................................... 277
在JavaScript面向對象編程中使用繼承(5) ..................................... 279
掙脫瀏覽器的束縛(1)- 別讓腳本引入壞了事 ..................................283
掙脫瀏覽器的束縛(2)- 兩個連線還不夠“並行” ................................288
掙脫瀏覽器的束縛(3)- 王道!動態添加script元素 .............................292
掙脫瀏覽器的束縛(4)- 哭笑不得的IE Bug .....................................296