問題一
Russ:你的新書《CSS權威指南》(Cascading Style Sheets: The Definitive Guide)第二版剛剛寫好,在我們了解此書細節前,想先問一下:你已經出版了多少本書?我發誓我家當地圖書館有專門一個類別是你的書。
Eric:不,不,那都是Molly Holzschlag 的書,我只是類似的、輔助的部分。我已經寫了5本書,其中的一本是精簡版,我想那也許能也許不能算作一本書(我妻子堅持認為是)。第一本就是《CSS權威指南》,如果這次的第二版算是獨立版本,那我就有6本書了。我自己認為這次的第二版是算一本,因為它的工作量等於寫一本新書。
問題二
Russ: 在新權威指南中,比第一版增加或更新了什麼內容?
Eric:幾乎所有內容都更新了。唯一不需要改變的是第一章和關於字體的章節,其他內容都大半或完全的更新了。原來的章節排列在文本狀態下完全打散重新排列。例如:在第一版中有"floating in the Visual Formatting"章節和"positioning got its own"章節,在新版中我將它們合併到單獨一章中去了,並重寫了大部分的格式章節。同樣的方式,"the bit about lists"移到了它原有的章節,並增加了大量內容。有三章是全新的,它們是:Table Layout(表格佈局), User Interface Styles(使用者介面樣式), and Non-Screen Media(非螢幕顯示類別媒體).
問題三
Russ:我聽到一個傳言說你的《Eric Meyer on CSS》也有新版本,新版本提供了多少設計方法?
Eric: 那個傳言是真的。我們已經命名它為"in a blinding flash of creative genius, 'More Eric Meyer on CSS.' " 它比第一版有一些的改進,但不多。我要說的是,這兩本書沒有前後的關聯性,不需要為了第二版去閱讀第一版(即使你兩本都擁有。) 第一版的讀者可以回想一下,第一個設計方法是如何將表格驅動的佈局轉換為簡單的表格和CSS。而在新書裡,第一個設計方法是:將只用HTML標識和空白GIF設計的相關頁面轉換為一個用純CSS取代表格佈局的頁面。
類似的,有許多設計方法,例如:多種方法顯示相簿(photo gallery)樣式,用表列資料實現整齊的金融報表,以及用背景佈置在多個瀏覽器實現半透明效果,包括在IE/Win中。
有一個關於顯示三級list的設計方法,包括列表的嵌套以及如何將它們轉換為一個"下拉(dropdown)"的選單,並且可以工作在大部分瀏覽器上(包括IE/Win),就像Doug Bowman的Sliding Doors(滑門) 技術一樣好。
除了上面這些,還有一個結合的方法可以解決weblog的入口樣式問題。書中的最後一個方法是隨便拿CSS Zen Garden (由Dave 建立)的一個設計,然後用css來實現它。基本上,Dave給我一個photoshop設計文件,然後我把它切割成我需要的幾個部分並用CSS使它正常工作,這樣做你可以看到從設計到最終代碼的整個過程。我也考慮到用PNG圖片的方法,並且不會在IE/win看起來難看。
問題四
Russ: 兩年以前,CSS很少被討論,現在看起來到處都在談論!你是否認為自己幫助了它轉變為主流意識?
Eric: 這是自然而然的事情,真的。首先,IE6開始支援DOCTYPE開關,稍後又宣布它將不再發放新的IE版本,給大家一個穩定的感覺。第二,有足夠的設計師有足夠的時間閱讀書籍和教程,並用CSS在自己的網站上做實驗。在這種背景下,一群優秀的設計站點出現了。第三,我想是因為隨著設計藝術的提升,那些有設計能力的天才並能真正理解CSS好處的web設計師(象Doug Bowman, Dave Shea, 和Jeffrey Zeldman)推動了事情的進展。連線(wired)雜誌網站的重新設計,禪意花園(CSS Zen Garden)以及其他站點開始展示CSS驅動的設計,不僅能工作,而且看起來非常漂亮、不可思議。
越來越多的實用的、容易跟學的資源(例如:Listutorial 和Floatutorial)也起到了很大作用,等等。
問題五 Russ:對於那些剛開始接觸和使用web標準的設計師和開發者,CSS的哪些方面是最重要的?
Eric:最重要的?我不得不說是層疊(cascading)部分。不只是層疊,還包括繼承(inheritance)、特徵(specificity)和選擇器(selector construction),一旦你掌握了這些,其他的都只是細節問題。
接下來,我想徹底理解視覺效果,包括區塊(block)和內聯(inline),也是至關重要的。如果你能知道設計將展現什麼效果,可以避免很多(CSS沒有如預期執行)令人頭痛的問題。就像很多語言,CSS有它的規則,忽略規則一定會導致混亂。
問題六
Russ: 在過去的12個月裡,有一種圖片替代(image replacement)技術被引入。你對它的全面感覺是什麼?如果你不得不使用它,你將使用哪種模式(model)?
Eric: 我偏向使用CSS3的方法:用'content'屬性來取代內容。這是盡可能輕量(low-weight)和non-hackish的方法。這也是在目前低支援情況下的方法,因為目前只有Opera支援圖片替代。
另外,我發現圖片替代技術的優點和缺點並存,優點是使某些文字看起來漂亮,缺點是給靠聲音閱讀者造成易用性問題。坦白講,真正的問題在於讀者自己。他們嘗試展現真實的頁面和閱讀結果,但他們在做的正是一件錯誤的事情。如果一個頁面設定了screen-medium樣式,而閱讀機將完全忽略那些樣式,除非大多數的閱讀器被重新修理。
問題七
Russ:好像一提到"font size"就會點燃CSS大討論--一場字體純化論者和網頁設計師的戰爭。你是否認為有一個適合所有用戶的解決方法?
Eric:沒有,雖然我希望有別的方式,但我沒有。每一種設定字體的方法都有優點和缺點。你能做的最好的方法就是找到一種以前最佳,以後變化最小的方法,而且,這需要在不斷的設計變化(design-by-design)過程中完成。一位設計師的目標是盡可能以pixel控製文字字體達到最佳表現,雖然使用ems或關鍵字(例如x-small)能達到更好的效果。任何時候,如果有人告訴你,有一種方法定義你的字體尺寸適合所有站點,那麼他只是告訴你一個原則,而不是一個解決方法。
問題八
Russ: 有一個一直爭議的問題,你對CSS技巧(hacks)有什麼看法?
Eric: 這是不可避免的,直到有一天,我們的瀏覽器能夠完美的支援和執行CSS,就是CSS hacks停止的一天。在此以前我們將堅持要做。要指出,我的意思是針對所有的hacks,不管它們是對於CSS,還是其他事情,例如微軟的Conditional Comments。
問題九
Russ: 你是否認為當瀏覽器市場為CSS3做好準備時,將會進入一個新時代---記住微軟Longhorn作業系統的時間表。
Eric:我是這樣認為。但是,根據這種說法,那麼全面支持CSS2的視覺媒體(visual-medium)看起來早應該在2003年完成。我的預言記錄總是比其他人差,也或許不適合長期計畫吧。
問題十
Russ:最後一個問題,越來越多的web設計師正加入CSS2的隊伍,你是否認為CSS3的複雜性將減少它自身的吸引力,甚至使一些畏懼它的設計師完全放棄CSS?
Eric:有比那更糟的:多數的web設計師僅僅學習了CSS2的一部分,而沒有真正理解它的本質。
任何事情都有可能發生,就好像曾經有設計師因為CSS1的"複雜性"(相對他們所掌握的知識)而畏懼的。
關於CSS3,有一件好事情就是:它被分離並整合到模組(modules)中去了,所以你可以忽略你不關心的部分,而集中精力在你想了解的部分。如果你真得想深入到列印樣式中,你可以閱讀列印模組(Print module)去了解它。如果你關心的是國際化,那麼你找到I18N 模組,那裡有些每個人都需要了解的部分(如選擇器和層疊),但是隨後,伴隨你的興趣而來的是不得不啃那些龐大的規範說明書。