當(dāng)前位置:首頁>>軟件教程>>新聞內(nèi)容  
網(wǎng)站?XML?我的思考
作者:taowen 發(fā)布時間:2004-2-16 9:21:43 | 【字體:

在CSDN上看到這篇文章,作者簡要的從HTML、css、JS、腳本等一直講到XML,對于初學(xué)制作網(wǎng)站和還在網(wǎng)站開發(fā)中摸索的朋友應(yīng)該有一些幫助。
作者網(wǎng)站:taowen(http://taowen.bitapf.org 或者 http://www.noasia.net/taowen

1、我用HTML進(jìn)行設(shè)計(jì)

  曾經(jīng)我以為我蠻特別的,我喜歡用記事本來寫很簡單很簡單的HTML。而且,我看的關(guān)于網(wǎng)頁的第一個教程也就是教你 < H1 >啊這些標(biāo)簽的教程。相信那個著名的教程,很多人都有看過。只是很多看過了之后不一定會自己去手寫這些代碼,只是知道frontpage這樣的工具背后的原理就好了。
  但是時間久了還是覺得蠻累的。因?yàn)槲覍懘a的時候畢竟是要靠自己的大腦去想象最終的外觀會是什么,所以有的時候還是蠻想去用Dreamweaver這樣的工具。也難怪那些所見即所得的工具會有那么多用戶了,因?yàn)閷懙臅r候就直接看到了最終的呈現(xiàn)。
  手寫代碼的時候,如果遇到了重要的內(nèi)容,我會用< FONT size=+0 >這樣的標(biāo)簽特意去改變一下外觀。遇到了列表的內(nèi)容的時候會用 < UL >啊這樣的標(biāo)簽,產(chǎn)生1234的標(biāo)號,或者一個個的圓點(diǎn)。其實(shí)有的時候覺得html挺簡單的,因?yàn)闃?biāo)簽的數(shù)量很有限嘛。

2、我使用HTML的表格

  HTML的表格是很有意思的東西。當(dāng)你遇到了要列表的東西的時候,如果是沒有表頭而且是一列的時候,你可能會用 < OL >這樣的單列。如果是兩列,可能就會用 < TABLE >了。而且用起來也不是很復(fù)雜, < TBODY > < TR >就是開一行, < TD >就是一列。當(dāng)然還有很多種排法了;镜囊簿褪欠址礁瘢缓蠓艝|西。
  表格有趣的地方是,你設(shè)計(jì)form這樣的東西的時候也會用表格。雖然每個單元格的內(nèi)容之間沒有什么意義上的關(guān)聯(lián)了。不像你的成績單列表那樣,數(shù)學(xué)成績一列,語文成績一列。在form中使用表格僅僅是為了最終的版式上的問題。利用單元格把form中的元件進(jìn)行定位。
  后來表格的排版作用用到了整個頁面的排版,而且越用越復(fù)雜,表格加表格。直接導(dǎo)致了我這樣手寫代碼的人無法去修改,去編寫這樣的頁面。一度讓我很傷心,覺得這個世界被Dreamweaver這樣的工具的使用者掌握者,因?yàn)橹挥欣盟娂此貌拍軌蛉ピO(shè)計(jì)這樣外觀豐富的主頁。

3、我還用過css

  css是讓我激動的東西。我承認(rèn)這點(diǎn)。我曾經(jīng)夢想,我寫網(wǎng)頁的時候只要把每塊內(nèi)容指定好了class。以后要改變網(wǎng)頁的外觀就只需要把css換調(diào)就可以了。而且css可以是內(nèi)含的也可以是外部用< LINK >鏈接的。我要把網(wǎng)站改版把css的內(nèi)容換一下就可以了。
  而且css還有@import,利用它我還可以在網(wǎng)站的每個目錄下都放一個style.css,然后利用@import包含站點(diǎn)的樣式表。這樣每個網(wǎng)頁就不用..這樣的目錄選擇符來選擇在父目錄中的樣式表了。這個特性著實(shí)讓我很興奮。
  我的夢想越來越清晰,就是有朝一日,我寫的網(wǎng)頁能夠很輕易的更改外觀,而且編寫的時候再也不用自己去使用< FONT size=+0 >這樣的標(biāo)簽了。

4、javascript也是讓人好奇的東西

  我相信網(wǎng)絡(luò)發(fā)展還不如現(xiàn)在這么發(fā)達(dá)的時候就開始設(shè)計(jì)網(wǎng)頁的朋友,一定對于各式各樣的javascript非常熟悉。比如跟隨鼠標(biāo)的星星,跑馬燈之類的東西。javascript設(shè)計(jì)出來是為了實(shí)現(xiàn)客戶端的一定交互性的。javascript之所以能夠交互是因?yàn),它能夠通過DOM操縱你看到的html頁面,而且能夠通過html元素中的事件屬性得到你的輸入。
  因?yàn)閖avascript能夠通過DOM把html的頁面進(jìn)行改變。這個性質(zhì)其實(shí)也讓我激動了好久。比如leoboard的最新帖子這樣的信息,就是通過一個 < SCRIPT >的鏈接,鏈接到一個cgi上面,它產(chǎn)生的就是一段js腳本,通過document的函數(shù)寫出一段html代碼。也就是說,javascript能夠“動態(tài)”的產(chǎn)生html代碼。
  由于javascript的這個功能,我又開始做夢了。希望能夠整個網(wǎng)站都是通過互相包含的javascript組成。我把我的內(nèi)容都寫在javascript的變量之中,然后通過一定規(guī)則組合通過DOM的函數(shù)把內(nèi)容以一定的模板風(fēng)格寫入到最終的html輸出之中。

5、再聞css

  一開始聽說css,也許那個時候還是css1的時代吧。只知道css能夠設(shè)定一定元素的外觀顯示,比如字體啊,空白什么的。關(guān)于css的排版功能一概不知。第一次做css的夢的時候,其實(shí)就是因?yàn)橐裩tml進(jìn)行排版控制,不得不用很多的table這個原因破滅的。所以當(dāng)我知道css的功能很強(qiáng)大,可以進(jìn)行各種版面控制的時候,就又開始做夢了。
  把內(nèi)容按照其性質(zhì)放到一些< div class="..." >這樣的標(biāo)簽之中,用不同的css樣式表,能夠把這些div定位到頁面的不同地方,而且顯示也是不一樣的。這樣我就能夠在寫html的時候以任意的順序來寫,只管內(nèi)容。而css會根據(jù)你對內(nèi)容的描述(class是什么)把內(nèi)容進(jìn)行定位排版和顯示。
  所以說,以前我知道的css只把元素的內(nèi)容和顯示分開了,但是元素的位置還是與在源代碼中的位置相關(guān)。而現(xiàn)在知道的css,能夠讓元素只管自己的事情,告訴css自己是什么(class是什么),不用再考慮自己在文檔中的位置了。這樣不就實(shí)現(xiàn)了內(nèi)容與表現(xiàn)分離了嗎?不就是我等用記事本寫網(wǎng)頁的網(wǎng)頁設(shè)計(jì)者追求的嗎?

6、內(nèi)容與外觀分離

  我相信這句話很多人都聽說過,夢想過。我的夢從模糊,到清晰,一直都在想著有朝一日我能夠只管把我要傳達(dá)的內(nèi)容寫下來,讓其他的人來給我排版給我定外觀。It is a Dream。
  我們只從一個網(wǎng)頁設(shè)計(jì)者的角度,而且是一個普通網(wǎng)頁設(shè)計(jì)者的角度來談這個問題。不要把什么中間件,應(yīng)用服務(wù)器什么程序高手津津樂道的術(shù)語來壓“我們”。
  為什么要把內(nèi)容和外觀分離我相信很多人都有自己的體會。我的體會很簡單。當(dāng)年自己手寫html的時候,我對我的內(nèi)容很有信心,我知道我要說什么,我有內(nèi)容。但是我對于如何排版很沒有信息,我想讓別人,或者自己以后來把內(nèi)容進(jìn)行排版。但是事情是很讓人失望的,我基本上只有兩個對策。把內(nèi)容的格式變得簡單得不能再簡單,只是html的最基本元素的線性排列。除了 < P >就是 < P >這樣的頁面,樸素得不能再樸素。要么就是設(shè)計(jì)一個很好看,很復(fù)雜的頁面。我自己手工的把內(nèi)容粘貼到頁面的模板之中去。如果有很多類似的網(wǎng)頁,還要保證它們的風(fēng)格是一致的。如果每個頁面還有到其他頁面的鏈接,比如是上一頁,下一頁之類的,It is a nightmare。
  把內(nèi)容與外觀分離,就這樣成為了我16歲的夢想。

7、perl,php,asp

  我很坦白,我從來沒有用過jsp,我不喜歡java提供的那些東西(請不要因此罵我淺薄,我知道它們的商業(yè)價值,但是現(xiàn)在僅僅是說網(wǎng)頁設(shè)計(jì))。
  按照順序,我用過的是這么三種網(wǎng)絡(luò)腳本。perl是我接觸的最早的一個網(wǎng)絡(luò)腳本,那個時候一般都是用cgi這個名字。后來我有遇到了php,最后才是asp。
  這里我只是談網(wǎng)頁的問題,不涉及到這些網(wǎng)絡(luò)腳本怎么實(shí)現(xiàn)網(wǎng)絡(luò)的交互的。也只是就著網(wǎng)絡(luò)腳本,說說它們怎么又能實(shí)現(xiàn)內(nèi)容與外觀分離的。而且這三種雖然在訪問文件,訪問數(shù)據(jù)庫,使用模板,產(chǎn)生html輸出各個階段和模塊上各有不同,但是原理一樣,方法相似,所以通稱網(wǎng)絡(luò)腳本。
  網(wǎng)絡(luò)腳本是讓我激動的東西,而且同樣作為engine驅(qū)動著很多現(xiàn)在正在運(yùn)行的網(wǎng)站,比如經(jīng)典的LAMP組合。它們關(guān)鍵的地方是能夠產(chǎn)生html輸出。因?yàn)閔tml不再是你自己手寫的了,所以不需要經(jīng)過你的手就能把html的輸出產(chǎn)生變動,這樣就有靈活性。
  為了文章能夠分出更多的節(jié),我按照我個人的認(rèn)識順序來看看網(wǎng)絡(luò)腳本使用

8、網(wǎng)絡(luò)腳本和文件

  我最先看到網(wǎng)絡(luò)腳本的使用,是leoboard這樣的cgi程序,它使用文本作為數(shù)據(jù)的存放媒介。數(shù)據(jù)來源是文本,然后cgi中的perl程序會對文本進(jìn)行解析,然后把解析的結(jié)果可能會放到變量之中,最后變成html的輸出。
  這里就是通過cgi程序作為中介,把文本的內(nèi)容表現(xiàn)到了html之中。

9、網(wǎng)絡(luò)腳本和數(shù)據(jù)庫

  后來我才看到了網(wǎng)絡(luò)腳本和數(shù)據(jù)庫的連用。經(jīng)典的搭配有php+mysql和asp+access,我都有用過,不過都是很簡單的。把數(shù)據(jù)儲存在數(shù)據(jù)庫中好處當(dāng)然是多多,專業(yè)人士可以有很多事務(wù)啊之類的術(shù)語來描述其好處。不過顯而易見的是,儲存和獲取的方法是標(biāo)準(zhǔn)化的,通過SQL嘛。而用文本作為存放媒介,文件格式以及解析,還有文件的完整性,容錯這些都需要網(wǎng)絡(luò)腳本設(shè)計(jì)者自己來控制,雖然很自由,但是更多的是勞累。同樣,一種腳本有自己的一種格式,多浪費(fèi)。要換論壇程序這樣的情況出現(xiàn)的時候,又需要了很多麻煩。

10、網(wǎng)絡(luò)腳本和模板

  我記得當(dāng)時我學(xué)asp的時候,很多文章就是這么介紹的。asp能夠夾雜在html的代碼之中,可以很方便的使用。而我使用perl的cgi的時候,很多程序又是使用滿是$xxx的模板來做html輸出的。這個時候,我就想who is better?
  模板我還是蠻欣賞的。初級階段的模板就是很多以前的cgi的網(wǎng)絡(luò)文章程序中的那樣,在html中放perl的變量名,然后最后輸出的時候做一個替換,F(xiàn)在的模板當(dāng)然要復(fù)雜好多,理論也很多。但是,我們可以看到的一點(diǎn)是模板做到了“把業(yè)務(wù)邏輯和表現(xiàn)邏輯分離”。
  一般模板和腳本的關(guān)聯(lián)就是通過一些兩方面都知道名字的變量或者數(shù)組。然后腳本在變量中預(yù)先把內(nèi)容存入這些變量之中,模板再把變量和數(shù)組中的內(nèi)容提取出來插入到html之中。由于模板大部分是由html組成,所以比較適合給設(shè)計(jì)人員來設(shè)計(jì)。而且腳本的任務(wù)也就僅僅致力于從數(shù)據(jù)庫也好,文本也好,這樣的數(shù)據(jù)源中取出內(nèi)容,進(jìn)行一些加工,然后存入到變量之中。至少讓腳本程序員免于考慮最終的外觀問題。

11、網(wǎng)絡(luò)腳本的時代

  我們現(xiàn)在基本上就處在這么一個時代之中,大部分的頁面已經(jīng)不是手工編寫的html了。而是由網(wǎng)絡(luò)腳本動態(tài)產(chǎn)生的。方法步驟都是類似的:
  數(shù)據(jù)源+網(wǎng)絡(luò)腳本+模板=頁面
  似乎故事已經(jīng)到了終結(jié)了。因?yàn)槊缐粢呀?jīng)成真了。利用數(shù)據(jù)庫中存放數(shù)據(jù),模板來控制顯示,網(wǎng)絡(luò)腳本進(jìn)行一些計(jì)算和溝通工作,內(nèi)容和外觀分離的夢想已經(jīng)實(shí)現(xiàn)了。而且,現(xiàn)下的很多現(xiàn)成的程序,一些CMS(內(nèi)容管理系統(tǒng)),你直接在服務(wù)器上安裝好,就能夠享受其便利了。
  但是,我們還有更多選擇。

12、XML的登臺

  XML應(yīng)該不是什么陌生的東西了。如果你不知道,說明你可能已經(jīng)很久都沒有關(guān)心過網(wǎng)頁設(shè)計(jì)或者說是計(jì)算機(jī)這個行業(yè)了。XML的好處,長處,已經(jīng)被說爛了。我就不多說了。
  我把XML分為兩類:作為數(shù)據(jù)或者文檔的XML,以及功能性的XML。這個分類是我自己下的,功能性的XML指的就是HTML,SVG,MathML這些。可能SVG什么的你不了解,但是至少HTML你知道吧。關(guān)于HTML也是XML這個觀點(diǎn),你應(yīng)該聽說過。HTML為什么被我說成功能性的XML呢?因?yàn)槿绻銥g覽器為觀點(diǎn),它認(rèn)識HTML,它能夠把HTML標(biāo)記的能內(nèi)容作出顯示。而如果是一般的XML,它就不認(rèn)得,如果是IE會調(diào)用內(nèi)部的一個顯示XML的模板把它顯示出來,但是有的瀏覽器就不會。也就是說,一般的XML其中的內(nèi)容元素,對于瀏覽器來說它是不知道什么意義的,而HTML的元素是對瀏覽器有特殊意義的。同樣,SVG這些XML也是這樣,雖然標(biāo)準(zhǔn)仍然在制定之中,瀏覽器對它的支援還需要一些插件。但是SVG的基本結(jié)構(gòu)不會有什么變動了,它就是通過標(biāo)簽的標(biāo)記,通過瀏覽器的讀取產(chǎn)生二維的圖像。關(guān)鍵的地方就是,瀏覽器認(rèn)得SVG中的元素,知道它的意義,并且能夠作出顯示。
  自然,對于瀏覽器沒有特殊意義的XML就是文檔數(shù)據(jù)型的。把XML分為文檔為中心和數(shù)據(jù)為中心的這種分法是非常常見的。關(guān)于這個話題,我在后面繼續(xù)說。

13、HTML作為一種功能性的XML

  我現(xiàn)在把HTML完全作為一種表現(xiàn)語言,它的唯一功能就是把內(nèi)容作出顯示。也就是我把在HTML中表現(xiàn)內(nèi)容的語意這個夢想給完全放棄了。HTML就是一個功能性的XML,它的目的就是讓瀏覽器顯示。要把內(nèi)容和表現(xiàn)分離,我就是要從別的數(shù)據(jù)源中轉(zhuǎn)換到HTML。
  那是不是CSS就多余了?當(dāng)然不會,css的目的是幫助HTML更好的表達(dá)如何顯示這個要求。也就是XHTML+CSS共同表達(dá)的一個目的,網(wǎng)頁的外觀布局。它們的目的是一致的,而不是我以前想象中的HTML表達(dá)內(nèi)容,css來表達(dá)外觀。而且CSS的存在,能夠表達(dá)更加精確更加豐富的內(nèi)容,而且比用table這樣的表格排版更加簡潔明了。

14、XML作為HTML的源頭

  我把HTML表達(dá)網(wǎng)頁的內(nèi)容這個想法給放棄了之后,很自然的想法是把XML作為HTML的數(shù)據(jù)來源。但是這并不是很常見的做法。更多的做法是,利用數(shù)據(jù)庫,利用文件然后用網(wǎng)絡(luò)腳本進(jìn)行提取,然后可能還要通過一道模板,直接產(chǎn)生HTML。其中并沒有XML的位置,那么到底在產(chǎn)生HTML的過程中需不需要XML呢?
  現(xiàn)在問題已經(jīng)很明白了,HTML完全作為一種表現(xiàn)語言。焦點(diǎn)是對于HTML從何而來這個問題。務(wù)實(shí)的態(tài)度是尊重現(xiàn)有的解決方案,而且它們可以做得很好。這里只是對于XML能夠在產(chǎn)生HTML的過程中的什么階段進(jìn)行參與工作,進(jìn)行一些個人的看法的探討。

15、XML直接產(chǎn)生HTML

  這個可能是很多人頭腦中首先想到的辦法。利用XSLT,把XML轉(zhuǎn)換成HTML。而且關(guān)于這個,我將在文章最后,給一個我個人的全面的想法。
  我覺得利用XML產(chǎn)生HTML,主要是用在小型的純發(fā)布的場合(比如個人主頁),因?yàn)閷τ赬ML文件的更新和刪除這些,并不是很完善。而且即使是使用XML數(shù)據(jù)庫,也不能勝任大型的場合。而XML更多的是作為中間數(shù)據(jù):

16、有數(shù)據(jù)庫產(chǎn)生XML然后產(chǎn)生HTML

  這可能是一個很好的方案。只是在現(xiàn)在看來有一些多余。因?yàn)榫W(wǎng)絡(luò)腳本從數(shù)據(jù)庫中提取了內(nèi)容之后,直接就產(chǎn)生HTML了,或者調(diào)用一個模板也把HTML產(chǎn)生了。如果其中在多一個產(chǎn)生XML的過程,還需要再編寫XSLT來產(chǎn)生HTML,讓人覺得沒有這個必要。

17、XML與數(shù)據(jù)庫

  很自然的,就延伸出了一個討論就是“XML與數(shù)據(jù)庫,用哪一個?”。其實(shí)這個問題之所以成為,我認(rèn)為是XML的發(fā)展不成熟。XML有其結(jié)構(gòu)和功能上的優(yōu)越性,但是同樣帶來了很大的復(fù)雜度。對于XML進(jìn)行查詢,就比對于結(jié)構(gòu)簡單的數(shù)據(jù)庫查詢復(fù)雜變數(shù)大很多。同樣,XML的表現(xiàn)力也要強(qiáng)很多。
  另外還與XML的兩個用法有關(guān),XML一方面可以用作以數(shù)據(jù)為中心,比如網(wǎng)站的客戶訂單。這和關(guān)系型的數(shù)據(jù)庫的特點(diǎn)是一致的,每個table的項(xiàng)是固定的,數(shù)據(jù)都是類似重復(fù)的。而XML同時還能用作文檔為中心的,比如你寫一篇文章時,用XML對文章進(jìn)行標(biāo)記。這樣使得標(biāo)記出現(xiàn)的位置,以及上下文就變得非常重要。
  所以關(guān)于,在什么場合下用XML,什么場合下需要XML這種問題,很難有答案。至少有一點(diǎn),隨著XML技術(shù)的完善和被越來越多的人掌握,XML會在其適合的場合越來越多的使用。

18、XML與網(wǎng)站

  如果僅僅是泛泛而談XML與數(shù)據(jù)庫,我覺得是很難定論。但是如果把討論的范圍縮小到網(wǎng)站,我覺得還是很容易得出答案的。
  對于交互性的場合,比如論壇,數(shù)據(jù)經(jīng)常要更新,XML就不適合。
  對于發(fā)布性的場合,比如文章系統(tǒng),XML就是一個很好的選擇。
  當(dāng)然還要考慮查詢是否方便。以及XML適合描述松散的信息,比如站長信息這樣的數(shù)據(jù)存放到數(shù)據(jù)庫中顯然是overkill,而放到xml中就比較合適。所以,我個人認(rèn)為如果是個人主頁這樣性質(zhì)的網(wǎng)站,使用xml是非常合適的。

19、在個人主頁中使用XML

  個人主頁一般都是無法購買那種有網(wǎng)絡(luò)腳本支持的服務(wù)器的,更不用說數(shù)據(jù)庫了,這個是來自于現(xiàn)實(shí)環(huán)境的限制。
  個人主頁的數(shù)據(jù)一般比較松散凌亂,而且文檔比較多,比較適合XML來描述,這個是顯示的需求。
  所以綜合了這兩點(diǎn),對于一般個人主頁的站長來說,這樣的組合方案是很不錯的:
  1)用XML來描述網(wǎng)站數(shù)據(jù),用XSLT來做轉(zhuǎn)換
  2)注冊一個免費(fèi)的留言板
  3)注冊一個免費(fèi)的BLOG
  這樣你就只需要一個HTML空間,同時又可以實(shí)現(xiàn)內(nèi)容與外觀分離,至少對我來說是一個夢想的實(shí)現(xiàn)。

20、最終實(shí)現(xiàn)指導(dǎo)

  這個純粹是個人意見,而且技術(shù)門檻相對比較高一些,估計(jì)沒有人會采納。
  第一步:
  描述你的網(wǎng)站內(nèi)容。如何描述完全是你的自由,而且是否使用DocBook這樣的東西來描述你的文章這樣的東西也是你的自由。描述應(yīng)該分布在很多個xml文件之中,可以利用XInclude技術(shù),也就是利用這樣的標(biāo)簽把所有的xml逐級串起來,最終是一個site.xml。找到了site.xml,就找到了你整個網(wǎng)站的內(nèi)容。
  你可以不用xinclude,而只是簡單的用一個元素記錄下文件位置,然后在XSLT中用document函數(shù)讀取也是可行的。
  第二步:
  描述你的網(wǎng)站的結(jié)構(gòu),也就是頁面的信息。這個我是用sitemap.xsl來做的。最終產(chǎn)生的就是一個sitemap.xml。里面由類似這樣的元素組成:

  這樣有兩個非常重要的作用,其一是能夠讓自動化的工具從產(chǎn)生的頁面信息中提取內(nèi)容,自動調(diào)用xslt處理器把網(wǎng)站給編譯出來。其二是能夠讓頁面索引到其他頁面,比如你要在一篇文章的頁面中鏈接到所屬的分類的所有其他的文章,你就可以在sitemap.xml中提供出哪些頁面是干什么的,比如所屬分類是什么。然后具體page的xsl就可以在sitemap.xml中根據(jù)這些信息,然后找到頁面最終寫出超級鏈接。
  第三步:
  設(shè)計(jì)每個頁面的xslt。xslt的輸入有兩個,一個是site.xml,另外一個就是sitemap.xml。從site.xml得到內(nèi)容,從sitemap.xml得到其他頁面的位置。
  第四步:
  利用你喜歡的腳本工具(設(shè)置是xslt+bat),自動化的完成整站的編譯工作。你還可以提供選項(xiàng)選擇編譯什么頁面。
  第五步:
  你也可以自己編寫一個工具來實(shí)現(xiàn)新舊對比的ftp上傳工作。

21、后記
  既然把HTML作為了完全的表現(xiàn)工具,那么HTML的地位就和FLASH啊這些應(yīng)該是平等的。所以網(wǎng)頁設(shè)計(jì)完全可以把所有數(shù)據(jù)最終做到xml中,然后傳遞給FLASH,讓FLASH來做表現(xiàn)層。這樣同樣做到了內(nèi)容與外觀分離。

  OK,對于網(wǎng)頁設(shè)計(jì)的技術(shù)的我的思考就基本上告一段落了。


文章來源:CSDN
·2004年門戶網(wǎng)站新一輪競爭趨勢:回歸“內(nèi)容”
·2003年全球最具影響力的10大網(wǎng)站排名
·IT168還有Pconline作為電腦商情網(wǎng)站助紂為虐?
·屏蔽惡意網(wǎng)站 修復(fù)IE瀏覽器
·如何雇用網(wǎng)站設(shè)計(jì)人員
·商業(yè)網(wǎng)站競爭優(yōu)勢研究
 放生
 愚愛
 夠愛
 觸電
 白狐
 葬愛
 光榮
 畫心
 火花
 稻香
 小酒窩
 下雨天
 右手邊
 安靜了
 魔杰座
 你不像她
 邊做邊愛
 擦肩而過
 我的答鈴
 懷念過去
 等一分鐘
 放手去愛
 冰河時代
 你的承諾
 自由飛翔
 原諒我一次
 吻的太逼真
 左眼皮跳跳
 做你的愛人
 一定要愛你
 飛向別人的床
 愛上別人的人
 感動天感動地
 心在跳情在燒
 玫瑰花的葬禮
 有沒有人告訴你
 即使知道要見面
 愛上你是一個錯
 最后一次的溫柔
 愛上你是我的錯
 怎么會狠心傷害我
 不是因?yàn)榧拍畔?/a>
 親愛的那不是愛情
 難道愛一個人有錯
 寂寞的時候說愛我