DIV CSS 佈局教程網

 DIV+CSS佈局教程網 >> 網頁腳本 >> CSS入門知識 >> CSS進階教程 >> Opera中國的WEB標准課程
Opera中國的WEB標准課程
編輯:CSS進階教程     

序言

長久以來,我一直有一個夢想。在過去的8、9年間,我主要從事教育工作,包括委托和編輯技術書籍,來幫助人們使用技術建立酷炫的東西,為我所工作過的多家公司培訓新員工,以及編輯和撰寫指南性的文章,幫助人們使用Opera的軟件。我也很著迷於Web,並且是開放的Web標准的堅定信徒。我希望通過我所從事的教育和培訓工作,教會人們如何合作,如何相互尊重,教會他們如何制作可跨平台、跨浏覽器、跨設備訪問的Web站點(甚至殘疾人也能無障礙地訪問),為改造Web世界盡我的一點綿薄之力。要實現這個目標,Web標准是關鍵 。因此我決定將我的時間和精力集中用於推廣Web標准的應用,這是我長久以來一直有的想法,但終於在Opera公司裡實現了,為此我要感謝我的上司聘用我專職從事這項工作,我的一個夢想終於成為了現實。

在這篇文章裡,我要向大家介紹我和其他很多人花費數月時間開發的一個課程——Web標准課程,該課程旨在向大家提供Web設計和開發的堅實基礎,無論讀者是誰,此教程完全免費、可訪問,並且不需要預備知識。當然,我主要還是希望在大學裡推廣本課程,因為我發現很多大學都缺乏好的關於Web標准的課程。我聽說很多大學生不願意花時間去學習關於Web標准的課程,因為評分辦法已很過時了。我還聽說一些公司在面試申請Web相關職位的大學畢業生時,發現這些大學畢業生根本不了解實際的Web開發是如何進行的,而感到非常失望。而如果你以一種理性的風格,在一所先進的大學裡教Web標准的話,那我要向你致敬,請與我聯系!

這篇文章的主要內容包括

  • 為什麼要使用Web標准?在這一部分,我要簡單論述使用Web標准的優點,為什麼很多時候Web標准未得到采用,以及如何通過學習我們的課程來解決這些問題。
  • 本課程的組織結構。這一部分概述課程內容的結構,並討論授課老師如何有效地使用和講述課程材料。
  • 本課程的適用人群。當我說“任何人”都可以學習本課程時,這裡的“任何人”其確切意義是什麼?
  • 課程的目錄。如果你想直接就開始學習的話,可以跳過這部分。
  • 致謝
  • 與我聯系

    為什麼要使用Web標准?

    為什麼你一定要在進行Web設計和開發時使用Web標准,這將在第4篇文章中詳細闡述。但我在這兒先大概講一下,讓大家有個基本的了解。使用Web標准,有以下優點:

    1. 提高代碼的利用效率:當你學習完本課程後,你會發現Web標准使用的最佳習慣主要是關於代碼重用的。通過重用代碼,你可以將HTML內容和樣式信息(CSS)及行為信息(JavaScript)相分離,減小網頁體積,而且只需要寫一次代碼,以後在需要的地方再重用即可。
    2. 易於維護:這一點與上面所說的最後一點密切相關。如果你可以只寫一次HTML代碼,然後在需要應用樣式和行為的地方,使用類和函數。而以後,在你需要做出改動的時候,你可以只在一個地方修改,然後此修改就會自動應用到整個Web站點,而不再需要一處一處地修改。
    3. 提高可訪問性:以下的兩點密切相關。Web上的一個大問題就是,讓Web站點可以被每個人訪問,而不論他們身處何種環境。這包括要能讓殘疾人,包括盲人、視覺受損的人、和運動功能有障礙的人(如運動受限制,不能自如地用雙手或根本不能用雙手的人)等)也能訪問網站。通過使用Web標准和最佳的習慣,你可以使你的Web站點能被盡可能多的人訪問。
    4. 設備兼容性:此處的兼容性,指的是不僅要確保你的Web站點可以跨平台(如Windows、Mac、Linux),而且要能在其它的浏覽設備上工作,比如現在用的手機、電視、游戲控制台等。這些裝置在屏幕大小、處理能力、控制機制等方面都有一些局限性。不過你放心,通過使用Web標准和最佳的習慣,可以讓你的Web站點能在絕大多數裝置上顯示。要知道全球手機的數量多於個人電腦的數量,而且很多手機都是可以上網的,你或你的客戶怎能不去占領這個大市場呢。要想了解更多有關移動Web開發的信息,請訪問 dev.opera.com 。
    5. 網絡爬蟲/搜索引擎:在這裡,我指的是所謂的“搜索引擎優化”,即讓你的Web站點能盡可能多地被網絡爬蟲爬到,並且被索引,從而提高你的Web站點在 Google 等搜索引擎上的排名。這是一項專門的學問(參考關於搜索引擎優化的文章,如《更適用於搜索引擎優化的智能站點結構》、《HTML語義和搜索引擎優化》等)。同樣地,通過使用Web標准,你就可以讓你的站點在Google、Yahoo! 等搜索引擎上盡量靠前地顯示,這必將大大地促進你的業務。

    盡管使用Web標准有以上諸多優點,但多數Web站點至今還尚未遵循Web標准,而且時至今日很多Web開發人員都還在使用過時的、不好的習慣。你會問“為什麼會出現這種情況呢?”。原因當然有很多,這包括缺乏教育和培訓、公司政策、不用學習標准也能領到薪水、學習太難、浏覽器所支持的標准等。以下我將逐一詳細分析這些原因,並批駁那些不采用或學習Web標准的借口。

    1. 缺乏培訓:這確實是一個問題,這也是我們開發本課程的主要原因之一。很多大學在它們的Web相關課程中都不教授Web標准,而且很多課程講述的內容也已經過時,由於官僚主義,這種情況還很難改變。培訓課程和書籍確實也花費昂貴,但現在我們已開發出這個免費的課程,並在大學裡推廣。“缺乏教育和培訓”再也不成其為不學習Web標准的借口了。
    2. 公司政策:無可否認,至今一些公司/機構依然維持其老式過時的Web站點,也許還制定有政策強迫其員工使用過時的浏覽器。但現在有了我們這個免費提供的課程,情況應該能得到改觀了。將Web站點進行升級,以達到當前的標准,這將促進公司升級它們所使用的浏覽器,這是因為用過時的浏覽器浏覽升級後的Web站點效果不佳(盡管還是可以浏覽)。公司還應該鼓勵它們的客戶也升級浏覽器。這樣做是有充分理有的,如上所述,使用了Web標准的站點,將有更靠前的搜索引擎排名,並能為更多的人,包括殘疾人和使用電腦以外裝置上網的人所訪問,公司怎能忽視這麼大的一個潛在客戶群呢?
    3. “我不需要學習Web標准”:我知道一些Web開發人員會這樣說:“我是在使用過時的方法開發Web站點,但我照樣領到工資,那我為什麼還要去費時費力地學習這個新東西呢?”我在以上部分已經講過,使用Web標准可以提高代碼的效率,使得寫代碼變得更為容易,並使Web站點更易於維護。此外,還可以使你能寫出可以在電腦以外的設備上顯示的代碼,這不很好嗎?學習Web標准,可以提升你的專業技能,並使你能掙到更多的錢。目前很多公司都需要懂Web標准的專業人員。
    4. “它太難學了”:廢話。在學習完本課程後,不論你是Web開發/設計方面的新手,還是需要進修的Web從業人員,都會發現要掌握使用Web標准的基本知識,其實是非常容易的。學習使用Web標准並不比使用老式過時的Web開發/設計方法更難,而且還能帶來那麼多益處。
    5. 浏覽器所支持的標准:過去有很多不同的浏覽器支持標准,這使得讓Web站點在不同的浏覽器下都能正常顯示,變成了一場惡夢。但那已是過去的事了,當今的浏覽器都支持應有的Web標准。一些老式浏覽器有時仍需要特別的支持標准,但通過使用當今最好的習慣,你可以確保那些老式浏覽器的用戶仍然可以獲得不錯的用戶體驗。

    因此像你們已經了解到的一樣,真沒有任何借口在從事Web開發工作時不采用Web標准。從一個初學者的觀點來看,學習本課程至少可以讓你一開始就學習最好的習慣,而不需要還要費力地去拋棄那些過去不好的習慣。

    我們一直以不屑的口吻談論那些過去不好的習慣,仿佛它們已是毫無用處的老古董了。的確,在本課程中我們不會教授這些不好的習慣,因為我們認為沒這個必要。我們認為學員一開始就應選擇正確的出發點。也許你們想知道這些過去不好的習慣究竟是怎麼樣的,下面我就簡要介紹一下。

    在過去,人們在制作Web站點時,習慣於這樣做:把整個頁面通過一些巨大的表格進行布局,使用不同的表格單元格來定位圖像、文本等(不是真正的表格,而是向頁面添加冗余的標記)。他們習慣於使用不可見的空白GIF來調整頁面元素的定位(不是真正的GIF圖像,而是向頁面添加冗余的標記)。他們習慣於用JavaScript來生成那些飛舞的菜單(這對於那些已經在浏覽器中禁用JavaScript的人來說,一點好處也沒有,而對那些因視覺障礙而使用屏幕閱讀器的人來說,也會被這些JavaScript搞暈)。或者,寫一些僅能運行在一種浏覽器上的JavaScript(但對於那些使用其他浏覽器的人,該怎麼辦呢?)。他們習慣於在HTML的<font>元素中,直接插入樣式信息(但這將增加維護的難度,並且會使頁面中憑添多余的標記)。此外還有很多不好的習慣,最糟糕的是,雖然我上面說的是“過去的作法”,但現在有很多人還像以前一樣做。

    Web開發本身就是一件雜亂無章的工作,而如果再沒有好的開發習慣,它就難上加難了。本課程所描述的Web標准和最佳習慣,將是你從事Web開發的最佳途徑。

  • 課程結構

    本課程由很多文章構成。在基礎課程完成時,將有50多篇文章,每篇文章的長度都為幾千個單詞。每篇文章的內容都集中在一個具體的主題上,一般將包括以下內容:該主題的背景知識、基本理論、實際例子、漫游教程,以及練習題。

    此外,我們在未來還將推出全套教程,內容將覆蓋構建Web站點的全過程。

    教授本課程適當的方式為:先確定你有多少堂課可以用於將本課程教完,然後除以文章的數量。在每堂課開始前,要求學員先通讀與該堂課相對應的文章,然後在課堂上討論實際的例子,並要求學員在課後做練習題。我認為只要讓學員在課前通讀了文章,講述每篇文章所包含的基本理念只需要1個小時就足夠了。大致說來,本課程需要50小時的授課時間,另需要50個小時的背景閱讀時間。

    很顯然,你需要仔細想想教授完本課程需要多長時間,每堂課又需要具體講述些什麼。可以通過試講摸索出路子。

    授課對象

    這是一個有關Web標准的課程,由多篇文章組成,其主要授課對象為任何想從零開始學習基於Web標准的Web(網頁)設計的人。本課程的目標為:使一開始僅懂如何浏覽網頁的人,通過本課程的學習,熟練掌握CSS樣式和HTML語言,並了解JavaScript的基本知識及實際應用。通過學習,將可以使學員獲得進入工作市場所需要的足夠知識(當然工作經驗是無法教授的,需要自己積累)。

    在我看來,授課對象是希望以“正確的方式”學習Web設計的任何人,包括:

    1. 大學/學院學生和老師:正如我已經指出的那樣,老師既可以利用本課程的全套文章創建自己的課程,並向學生講授;也可以將其中部分文章作為你自己課程的補充。而任何已經學過一些Web相關課程的學生,應當使用本課程的材料補充自己的知識,並勸說自己的老師也這樣做。我建議老師也把這些材料通讀一遍,以確保所教授的課程中含蓋的技術是當前的最佳規范。
    2. 大學預科/大學年齡的學生:盡管本課程主要是面向成人的,但中學生也還是可以從學習本課程中受益,可以嘗試學習本課程。
    3. 在職的Web設計者和開發者:有很多在職的Web設計者和開發者,尚未在工作中使用Web標准和最佳習慣,或是不能很容易就找到可用的參考資料,或不習慣更新自己的知識。我力勸前一類人一定學習一下本課程,以了解在工作中采用Web標准是多麼有價值且又是多麼容易。而對後一類人來說,我確信你們學習本課程也會有很大收獲,可以更新自己的知識和技能,溫習容易遺忘的知識,並使你獲得足夠的知識儲備,可用於說服你的雇主和客戶像Web站點的可訪問性這類要素有多麼重要。
    4. 公司內部的培訓人員:本課程是以低成本對員工進行培訓的理想方式。
    5. 其他個人:如果你是想學習Web設計和開發的個人,本課程也是你以低成本接受教育和培訓的理想方式。

    本課程是依據知識共享許可協議而發行的,任何想使用的人都可以免費使用,只要承認本課程歸屬於我們即可。

    目錄

    請注意,迄今為止本課程下的39篇文章已經發布,還有10多篇文章也將盡快發布,組成完整的課程。

    開始篇

    1. 序言,作者Chris Mills,就是您現在正讀的這篇。

    Web標准導論

    1. 互聯網和Web的歷史,以及Web標准的演化,作者Mark Norman Francis
    2. 互聯網是如何運轉的?作者Jonathan Lane
    3. Web 標准所包括的模塊——HTML、CSS 和 JavaScript,作者 Jonathan Lane
    4. 夢想雖然很美,但實際上到底怎麼樣?作者Jonathan Lane

    Web設計概念

    這部分並不涉及代碼或標記的細節知識,而是在你開始創建任何圖形或代碼前,幫助你了解Web設計過程,以及Web設計的一些基本概念,如信息架構、導航、可用性等。

    1. 信息架構——規劃一個Web站點,作者Jonathan Lane
    2. 一個好的網頁需要什麼?作者Mark Norman Francis
    3. 色彩理論,作者Linda Goin
    4. 建立站點的線框圖,作者Linda Goin
    5. 配色方案和設計樣板,作者Linda Goin
    6. 網頁排版,作者Paul Haine

    HTML基礎

    1. HTML 基礎知識,作者Mark Norman Francis
    2. HTML 的 <head> 元素,作者Christian Heilmann
    3. 為你的 HTML 文檔選擇適當的文檔類型,作者Roger Johansson

    HTML正文

    1. 在 HTML 中標記文本內容,作者Mark Norman Francis
    2. HTML 列表,作者Ben Buchanan
    3. HTML中的圖像,作者Christian Heilmann
    4. HTML鏈接——讓我們建一張網吧!作者Christian Heilmann
    5. HTML表格,作者Jen Hanen
    6. HTML表單基礎知識,作者Jen Hanen
    7. 罕為人知的語義元素,作者Mark Norman Francis
    8. 通用容器--div 和span元素,作者Mark Norman Francis
    9. 使用導航菜單創建多頁面,作者Christian Heilmann
    10. 檢驗你的HTML,作者Mark Norman Francis

    可訪問性

    1. 可訪問性基礎知識,作者Tom Hughes-Croucher
    2. 可訪問性測試,作者Benjamin Hawkes-Lewis

    CSS樣式

    1. CSS 基礎知識,作者Christian Heilmann
    2. 繼承和層疊,作者Tommy Olsson
    3. 使用CSS設置文本樣式,作者Ben Henick
    4. CSS布局模型——boxes、borderes、margins、padding,作者Ben Henick
    5. CSS背景圖片,作者Nicole Sullivan
    6. 樣式列表和鏈接,作者Ben Buchanan
    7. 樣式表格,作者Ben Buchanan
    8. 樣式表單,作者Ben Henick
    9. 浮動及清除,作者Tommy Olsson
    10. CSS的靜態和相對定位,作者Tommy Olsson
    11. CSS 的絕對和固定定位,作者Tommy Olsson

    JavaScript 的文章

    即將發布...

    補充文章

  • 將你的內容發布到網上,作者Craig Grannell.
  • 有關文檔中 <head> 元素的更多知識,作者Chris Heilmann.
  • 補充材料:用於排版的通用HTML實體,作者Ben Henick.
  • Opera公司Web標准課程詞匯表,由多人撰寫。本目錄尚不完整,將隨時添加。

    致謝

    在開發本課程的過程中,有非常多的人曾給予我幫助,也許無法一一列出他們的名字,但我希望在這裡能已列出他們每個人的名字。他們都是一些傑出的人,我建議你們去聽他們的講座、買他們寫的書、閱讀他們的博客,或者以其他方式給予他們支持。我向你們致以感謝和敬意。我要感謝:

    1. 文章的

      我始終希望更可能多的人能給我提供意見和建議,以讓我能改進本課程。如果你對如何改進本課程有任何建議,或是有任何評論,或是希望某個地方推廣本課程,都請與我聯系。我的E-mail是:cmills[at]opera.com 。 你也可以點擊每篇文章頁首的鏈接(“討論本篇文章”),發表你對文章的評論。為參與討論,你需要一個 my.opera 賬戶。

  • XML學習教程| jQuery入門知識| AJAX入門| Dreamweaver教程| Fireworks入門知識| SEO技巧| SEO優化集錦|
    Copyright © DIV+CSS佈局教程網 All Rights Reserved