表格對決CSS--一場生死之戰

2020-12-20 站長之家

  前言
  
  我第一次在internet上衝浪用的還是啞終端。不久以後,明尼蘇達州的一種單色的顯示器居然可以通過伺服器播放電影"巨蟒和聖杯"。當時沒有滑鼠,沒有良好的操作界面,更不用說24位彩色了。Gopher是唯一可用的工具。搜索則只能用Archie和Veronica。沒有人聽說過W3( World Wide Web),當時網絡看起來已經足夠用了。

  譯者註:

  1.啞終端。很像PC,但沒有它自己的CPU、內存和硬碟。通過共同的主機來處理事務。

  2.Gopher。一個客戶/伺服器(client/server) 應用程式,它通過執行FTP傳輸,遠程登錄(remote login), Archie 查找等,把所有信息以菜單形式顯示給最終用戶(end-user),使用戶能瀏覽大量信息。這樣用戶訪問 Internet資源時可以不需要知道(或輸入)其地址。

  3.Archie是第一個自動索引網際網路上匿名FTP網站文件的程序,但它還不是真正的搜尋引擎。

  4.Veronica是一種Gopher型的資源,你可用它在Gopher空間裡檢索包含指定的特殊單詞的所有菜單項。

  又過了一段時間,奇怪的代碼開始充斥我的搜索結果,我雖然還能夠閱讀需要的內容,但這些代碼卻令人討厭。同事告訴我那是HT ML,一種internet圖形化語言,我曾經學習了一些方法試圖濾掉HTML。再後來,出現了256色的顯示器和Mosaic瀏覽器的第一個版本,一切都開始變得不同了。

  從那時到現在已經很長時間了,技術上已經發生了難以置信的提高,web界面也被無數次地徹底改革、重新思考和重新改造。從我開始成為網頁設計師工作,我親自歷經了表格為基礎的設計、JavaScript的悲哀、CSS的努力發展以及更重要、更普遍接受的web標準各個發展時期。

  一開始,internet只是按照Geek(技術狂熱分子)想法創建出來的,internet上只有純粹的內容,他們沒有考慮到背景顏色和漂亮的圖片。但事實上,人們都喜歡在衝浪的時候看到更豐富的表現形式。表格(table)設計方法的出現解決了這個困難,我們可以通過表格來控制布局!我們紛紛開始"欺騙"系統,不能做出1 pixel的細線?只要在表格的行中插入一個透明的GIF小點,再設置一個背景色就可以實現了!不能控制字體?那就使用另一個標籤<font>!

  在我接觸CSS和web標準之前,我已經用表格方法設計好多年了。web標準的設計方法完全與以前不同,它是有效率的,它是迷人的。我深深地、熱烈的喜歡上新的設計方法。它可以用有意義的代碼將內容從布局中分離出來,卻依然保持空格和美麗的設計,我一下就"喜新厭舊"了,不再採用老的設計方法。

  直到今天。

  關於web標準和CSS目前已經有了很多的討論,就象每一個好的關鍵詞,它將成為web技術發展史上下一個"大人物"。它開始於Dougl as Bowman重新設計連線網站(Wired.com),並不斷發展。2003年,Zeldman寫的《Designing with Web Standards》一書出版,讓我們都看見了曙光,全世界各地的設計師都為新的設計方法而擁抱歡呼。它是結構化的,它是有語義的,它是快速的和輕量級的。

  然而,依然有一部分人們再採用傳統的表格設計方法,甚至還在用<font>標籤,他們說傳統方法更容易,更方便維護和快速開發。到底誰是正確的?

  我決定親自做一個實驗來看看事情是如何變化的,我們到底選擇哪種方法更好。

  挑戰

  我用圖象軟體設計了一個假想的網站。然後先用HTML4.01製作它,用表格,不用任何CSS;作為對比,再用XHTML1.0 Transitional 製作它,代碼符合易用性和可訪問性規範,並採用CSS,儘量避免表格(除非表格是用來表現表格化數據。)

  製作過程分三階段,並詳細記錄過程,進行正反兩面的比較,看看我們得到了什麼?失去了什麼?我們應該站在哪一邊。

  第一階段:設計站點

  我開始設計虛構的站點。我假設為一個叫"Butterfly Watchers Association(蝴蝶觀察協會)"的組織製作網站。呵呵,這也許是我最好的客戶了,不會參與到設計流程中來。我儘量把它製作的真實一點,假想網站的目標用戶,採用傳統的布局和比較權威的字體。

  我希望站點是結構緊湊的、有效的、簡明扼要的。而且,我想頁面上應該有蝴蝶,我到處尋找合適的蝴蝶圖片,不久就在stock.xchng找到了圖片。藍色的蝴蝶停在綠葉中,非常符合站點的形象。經過一些處理、修飾,這張圖就成為我們頁面的header。

  在設計過程中,我堅持一些易用性原則。例如儘量使圖片文件尺寸最小。一開始我準備在導航上採用Garamond字體,後來考慮到用戶的機器上可能沒有這種字體,我決定採用Georgia字體(這種字體類似 Times New Roman,最差情況下可以用 Times New Roman字體替代)。但在header圖片上,我還是採用了Georgia,因為它是圖片。

  文本使用灰色背景,使用Trebuchet MS字體;新聞採用Verdana字體,這種字體縮小時看起來也很好。有一種不成文的規則,就是在一個設計中採用4種字體,我並不怎麼同意這種觀點。

  對於蝴蝶和那些觀察它們的人們我知之甚少,我放了一篇觀察稀有蝴蝶的文章在首頁重要位置,我想這是用戶比較感興趣的內容。作為組織,應該有很多會員,所以我還放了一些會員信息。同時新聞也是必不可少的,我也加了上去。然後,還加了版權,一些象素裝飾圖,一個標語口號(They flutter. We watch them.)。整個頁面的布局是一個頁頭(header)緊接著是一行導航菜單,然後是2列內容,最後一行footer。我將"About"菜單設置為高亮,以顯示onmouserover的效果,整個頁面看起來就象這樣:

  好了,現在可以開始代碼了。

  第二階段:"用以前的做法,使用透明的GIF圖片來控制間距."

  如果你已經是一位參加過多個項目的網頁設計師,下面的結構是你再熟悉不過的:

  <table bgcolor="#ffffff" cellspacing="0" cellpadding="0" border="0" align="center" width="200"> <tr> <td colspan="3" bgcolor="#545454"><img src="blank.gif" width="1" height="1" alt=""></td> </tr> <tr> <td bgcolor="#545454"><img src="blank.gif" width="1" height="1" alt=""></td> <td width="100%" align="center">Content goes here.</td> <td bgcolor="#545454"><img src="blank.gif" width="1" height="1" alt=""></td> </tr> <tr> <td colspan="3" bgcolor="#545454"><img src="blank.gif" width="1" height="1" alt=""></td> </tr> </table>

  用表格說話,我們已經習慣於用它了,因為它是我們最基本的"積木塊"。例如:用透明的GIF圖片來控制間距、用表格的各種屬性來控制位置。有人這麼解釋:表格是可靠的,用表格布局的頁面可以向前兼容!沒有css敢與表格對抗,表格可以適合所有瀏覽器等等。

  讓我們開始一步一步再現整個設計過程。

  第1小時

  噢。好象時光倒流,不用CSS我們用什麼來定義背景顏色?哦,對...是bgcolor,謝謝提示。好,開始製作表格,預覽效果。我定義了"align=center",這樣就可以在所有瀏覽器中居中,太好了,這多麼簡單!表格看上去好象並不壞,我有與老友重逢的感覺。我熟練地使用透明的GIF圖片來控制間距,工作飛速前進!恩?在header和菜單之間怎麼會出現空白呢?哦,原來在images代碼後面多了一個空格,IE瀏覽器會把它顯示出來。這改起來簡單,刪除空格就好了。

  第2小時

  我使用javaScript製作導航菜單的翻轉效果:

  <td ... onMouseOver="chBg(this);" onMouseOut="chBg2(this);" >...</td>
JavaScript這樣寫:

  function chBg(obj) { obj.bgColor = "#E1E5DB"; } function chBg2(obj) { obj.bgColor = "#CBD1C3"; }
除了我對老設計方法有點忘記以外,整個進度還是相當快的。雖然,我儘量減少表格的嵌套,但代碼看上去還是有些複雜,所以我加了一些注釋上去,以方便找到我們需要修改的地方。

  遇到了一個小問題:不用css就無法消除連結的下劃線。也許有解決辦法,讓我們用google來搜索一下。

  第3小時

  google搜索後還是沒有找到辦法,如何才能製作沒有下劃線的連結?一定有一個解決辦法!

  第4小時

  可惡!因為不能消除下劃線,我不能繼續製作圖片菜單。不過這個實驗的規則是我自己制定的,我可以破例違反一下。我用一點點 css來解決,只要放一句style="text-decoration: none;"在連結的地方就可以了,yay!解決了菜單下劃線的問題。
 
  好了,我們接下來可以製作主要的2列。正文中的蝴蝶圖片我用了2個表格來實現細邊框效果,就象這樣:

 

  讓我們來看看前4個小時的成果在IE6以外瀏覽器上的效果。噢!在Firefox中非常醜陋,在Opera和Netscape中看起來還不錯。

  第5小時

  繼續代碼...,調試和修改。

  工作中,我認識到<font>標籤控制字體尺寸的局限性,我不能定義多種尺寸。真是該死!

  News部分的文字排版也遇到了問題,為了縮進,我不得不用更多的表格嵌套來實現效果。為了使正文中的蝴蝶圖片排列在文字的右面,我也不得不增加表格來解決。這種「欺騙」式的排版讓我感到很無奈。

  第6小時

  設計結束了,看上去和最初的設計差不多,你可以點擊這裡看看 。

  其中包含了多少表格,點擊這裡查看。

  第三階段:我們不需要表格!

  下面我們將看看什麼是基於web標準的、用CSS布局的設計。我將從內容的標識開始。我將儘量使標識有語義,避免多餘的標籤。

  頁頭是一個圖片,但它也是一個標題,所以我這樣寫代碼:

  <h1>Butterfly Watchers Association. They flutter. We watch them.</h1>

  我將稍後再考慮如何正確顯示這個標題(理想情況下,我們儘可能多的關心內容,儘可能少的關心布局)。其他標題(news,Sightin gs and Membership)將被標識為<h2>。

  菜單從根本上講就是一個無序列表(list),所以將被標識為list。段落不需要分類(我們採用繼承選擇器來把它們"掛"在包含的層中)。我將對比原始的內容文本,看為了實現布局需要增加多少額外的標籤(我將盡力避免增加標籤)。

  這就是原始的內容文本。看看原代碼,它符合xhtml1.0 transitional規範。注意所有的元素都已經被包含在定義了名稱的<div>中。新聞中的日期也被加上了date的類(class)。你可以看到代碼非常簡單。

  第1小時

  定義"container" 層的border為1px。通過在body樣式中定義"text-align: center"將內容居中。為了在所有瀏覽器中都居中,還在"container"中定義了margin: 0 auto;(意思就是top=0, right=auto, bottom=0, left=auto)。居中的處理方法和表格一樣容易。

  定義"body"的padding"top"和"bottom"數值為20px(不直接在"container"中定義padding是為了適合所有瀏覽器)。

  無序列表(li)必須定義為"display:inline",這樣菜單會被顯示在一行內。我在菜單間增加了導航圖標。這些導航圖標是用不重複背景方法定義的,可以精確定義(x,y)位置,類似這樣:

  background: url(menuBullet2.gif) no-repeat 4px 9px; 菜單的點擊顏色變化效果採用連結的hover樣式,不再需要JavaScript。

  我設置頁頭的蝴蝶圖片為<h1>的背景,這樣可以不用擔心易用性,在不能顯示圖片的設備中(如屏幕閱讀機和搜索機器人)也可以正常閱讀標題。

  第2小時

  菜單的第一項(HOME)使用一個不同的圖標,我不得不隱藏原來的背景,為HOME菜單增加一個額外的id(frst):

  #hMenu ul li#frst

  再另外一個(CONTACT)圖標:

  background: transparent url(menuBullet3.gif) no-repeat 615px 9px; 我無法用CSS控制2列有一樣的高度,幸運的是,我可以用背景圖片來變通實現。我定義了"container"縱向重複背景。

  background: #fff url(bgMain.gif) repeat-y; 

  第3小時

  CSS定義盒比表格方便多了,特別是邊框的許多屬性非常有用。

  現在我開始定義<h2>標題。圖標的定義和上面的方法一樣。

  我將"news"層浮動(float)在"sightings" 和 "membership"的右面。 定義"copyright"層" clear: both;",這樣它可以跟在浮動層的下面。將正文中的蝴蝶圖片浮動在右面,文字可以自動環繞在圖片周圍。定義圖片的1px border和設置padding距離就可以實現原來2個表格嵌套的效果。

  又發現一些問題:版權層與內容層有部分重疊。

  第4小時

  顯示的錯誤與"sightings" and "membership"的float:right; 定義有關。將它們浮動在左面就可以解決這個問題,這看上去很奇怪。我用firefox進行第一次測試,恩,看上去還不壞,只是菜單的圖標有幾pixel的移位。

  有一些CSS技巧可以修正在非IE瀏覽器的顯示效果,例如給不同瀏覽器不同的屬性值。

  我同一元素定義中使用了!important 值,相同的定義寫在前面可以優先執行,這個值不被IE瀏覽器支持。

  background: url(menuBullet2.gif) no-repeat 4px 6px !important;

  background: url(menuBullet2.gif) no-repeat 4px 9px;

  在CSS中,如果同一元素有多個定義,最後一個是有效的。但是因為IE不支持!important,所以IE將使用第二個定義值,而其他瀏覽器將採用第一個定義值。

  全部完成,看這裡的結果。

  結論

  基於表格的設計

  我用各種能找到的瀏覽器來測試頁面,包括linux、windows和Macintosh平臺的瀏覽器。表格布局的頁面在不同瀏覽器中看上去都一樣。"它象巖石一樣堅固",這是給表格布局的第一評價。

  然而,當需要修改頁面部分內容時,表格布局改起來相當費力。這是一個問題,如果我們使用CMS(內容管理系統),內容需要被格式化就比較麻煩。
 
  整個設計時間有點長,是因為我已經有點遺忘了老方法,如果重新再來一次,我想可能會節省1-2個小時。

  我形容基於表格的設計是大量"老土的(grunt work)"工作,雖然我經常吃驚於那些高級設計技巧。使用基於純CSS的設計,我通常習慣於分解設計和逐步分析bug。而用表格設計則不需要這些工作,你只要不斷往設計裡面扔table就可以了。讓我們再來看看CSS的過程。

  基於CSS的設計

  用CSS設計的感覺好多了。代碼的改變直接而透明,我能清楚得控制整個過程,反觀表格的設計就象在壘磚頭。頁面的改變越大,越感到CSS設計的方便和效率。

  CSS設計對節省帶寬也非常有意義,將所有樣式提取出來放在單獨的文件中,整個站點用一個或幾個樣式表文件,可以使整個站點尺寸更小。

  將布局信息從內容中分離出來,也有許多的好處。在將來,我可以隨時改版整個站點而不需要修改任何內容,就象CSS Zen Garden 。同時也增加了易用性,搜索機器人將更加方便發現你的頁面(記住:google是你最重要的訪客來源)。

  在製作完畢,我同樣在不同平臺不同瀏覽器上進行測試。IE5.5和IE6.0表現完美。IE5.0上出現了錯誤,菜單和一些縮進失效,錯位的頁頭效果看下面圖片:

 

  好無疑問這個bug可以被修復,但是考慮到這篇文章的主題範圍,我不展開講了。如果這是一個真實的客戶項目,我肯定不能犧牲I E5.0的用戶。在更老一點的瀏覽器中,CSS的設計表現得一團糟。

 

  IE4

   Netscape 4.7x

   如果對不支持CSS的瀏覽器做一些代碼處理(例如對Netscape用@import)看上去會好一些。

  儘管當你熟悉基於CSS的設計後工作效率非常高,但是之前你必須花費大量的時間學習規則、盒模型的不同、瀏覽器的處理技巧以及許多的理論,並需要不斷的實踐來掌握。簡而言之,CSS比tables更簡單,但如果你想使用純CSS設計,請準備投資大量的時間學習。即使你是一位經驗老到的開發高手,也要準備好應對各種bug,有時候處理一個bug會花費幾個小時。

  勝者

  CSS和基於web標準的設計勝出。只要看看兩種方法的代碼就足以做出選擇了。CSS提供了更多的好處(主要在易用性方面)。其實根本的原因是我的懶惰。如果用表格設計,客戶一年後聯繫我說需要改版,我可能會告訴他我參軍了,正在國外某個鄉村。如果我使用的是CSS,我將毫不思索地為客戶改版,因為我不需要全部推翻重來。

相關焦點

  • CSS表格樣式
    CSS中的表格樣式有caption-side(表格標題位置)、border-collapse(表格邊框合併)、border-spacing(表格邊框間距)。 DOCTYPE html><html>    <head>        <meta charset="UTF-8" />        <title>表格標題位置</title>        <style type="text/css">
  • 修飾之美:CSS在表格邊框上的美學應用
    首頁 > 教程 > 關鍵詞 > 最新資訊 > 正文 修飾之美:CSS在表格邊框上的美學應用
  • 網頁布局:CSS控制表格嵌套
    網頁設計應用中,當我們不能完全放棄表格的使用時,為了達到預期的效果,不免要用到表格嵌套(特別是多層嵌套)方式來進行布局。可能很多同仁都遇到過這樣的問題,對了達到顯示效果要為每一個(每一層)的表格寫不同的CSS代碼或加不同的屬性值。這樣寫出來的代碼可讀性非常差,不便修改和管理。學會用CSS中的偽類這個問題就迎刃而解了,看一看我的處理方法吧。
  • 2016QGC坦克之戰高校賽:武漢群雄逐鹿 杭州接棒對決
    本屆QGC高校公開賽《坦克之戰》由企鵝電競傾力主辦,SMG旗下遊戲風雲獨家承辦,旨在推動中國移動電競事業的多元發展。本屆QGC籌備了近半年時間,主打全民電競概念,並力求讓這一理念更加深入人心。繼武漢站之後,《坦克之戰》QDC的腳步將於本周來帶浙江,為廣大電競愛好者獻上一場盛況空前的熱血鋼鐵之戰!浙江站賽程將在四大高校依次進行。如果有參與體驗的玩家沒有玩過癮,可以根據安排前往對應高校繼續深入體驗遊戲,並欣賞金屬味十足的激烈對決,為參賽者助威!鋼鐵對決,熱血碰撞,《坦克之戰》QGC武漢站即將啟動!更輕鬆的對決,更暢快的戰鬥,更熱血的激戰,一切盡在《坦克之戰》。
  • 詳解DIV+CSS與表格建站的區別
    現在全國大大小小的網站都在搞一場技術「革命」,就是所謂「網站重構」說簡單點就是DIV+CSS進行網站製作。而且既然都是生成HTML,那對伺服器來說影響的效果是一樣的,只要你的虛擬主機網絡穩定,那麼在table和div+css上就沒差別。
  • css樣式如何美化表格和邊框的外觀?
    如今大家習慣了使用DIV+CSS布局頁面,其實table+css曾經也是流行的頁面布局方式。下面深圳市博納網絡信息技術有限公司介紹css樣式如何美化表格和邊框的外觀。單一邊框雖然給表格添加了邊框,但是顯示的是多個邊框,其中包括了表格邊框、表頭邊框和單元格邊框,如果為表格添加下面的樣式,就可以將表格的邊框顯示為單一的邊框,效果如圖
  • CSS在表格邊框上的美學應用
    首頁 > 教程 > 關鍵詞 > 最新資訊 > 正文 CSS在表格邊框上的美學應用
  • 生死戰上演 《NBA2KOL》CJ現場掀起籃球風暴
    China Joy現場掀起籃球風暴個人賽:經典姚鯊對決再現熟悉NBA的老球迷,一眼就能看出,這次要上演的是「姚鯊對決」的經典戲碼。最後生死大戰再度進入加時,葉濤最後安東尼內線上籃得手穩定勝局,最終32比28贏得個人賽冠軍。團隊戰:豪門爭鋒壓軸開啟
  • 宋慧喬、宋承憲各拍新片 「生死戀」情侶PK對決
    宋慧喬、宋承憲各拍新片 「生死戀」情侶PK對決 時間:2010.11.26 來源:1905電影網 作者:編譯/Ben
  • div+css模擬表格效果代碼
    非常不錯的模擬表格效果代碼,需要注意的是 這類代碼一般都是通過寬度控制,大家注意計算好<!//www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>DIV+CSS模擬表格效果
  • 網頁設計之css+div PK table+css
    首頁 > 教程 > 關鍵詞 > CSS最新資訊 > 正文 網頁設計之css+div PK table+css
  • 生死戰改寫歷史?馬丁內斯給全隊打氣,梅奧:最後一場拼上一切!
    今日就將是19-20賽季CBA的最後一場比賽,遼寧和廣東站進行生死戰PK,輸球回家,贏球捧起冠軍獎盃,這是榮譽的一刻也是傷感的一夜!兩隊彼此熟悉彼此了解,陣容對比已經不用多說了,這場球更多是「士氣」上的較量,做好48分鐘戰鬥的準備!
  • HTML之表格布局與美化
    本文主要討論表格的布局及美化。首先我們通過表1來看HTML中表格包含哪些標籤及屬性以及表2中表格的css屬性。表1:表格標籤及屬性表2:表格css屬性其中有幾個屬性是我們常用來實現表格布局及美化的:1、rowspan和colspan分別規定單元格橫跨的行數和列數
  • 白領麗人辦公室「生死戰」(圖)
    被別人窺探隱私,傳播毫無根據的流言蜚語;因為一些雞毛蒜皮的小事而故意挑釁,甚至掀起軒然大波;分分鐘還可能掉進她人精心布置的陷阱……  職場麗人的生死戰之容貌之爭  美貌同樣是女人的殺手鐧,尤其是擁有一位男性老闆的時候……  還記得《流星花園》中兩個一見面就要比拼容貌、衣著的兩名千金小姐嗎,除了周身名牌,甚至手術整出來的鼻子都會成為她們炫耀的資本
  • 梅羅對決即將上演!PP體育直播巴薩大戰尤文
    12月9日4:00巴薩VS尤文 梅羅對決不可錯過G組中巴薩和尤文實力鶴立雞群,分別拿到驚人的15分和12分攜手出線。本場對決最大的懸念是誰能拿到小組第一,以便在16強隊對決中佔據更好的位置。梅西和C羅的對決無疑是本場比賽最大的看點,兩位時代天驕的每次交手都會迎來海量關注。
  • 臺南這場「洪王之戰」將成2020「大選」外最受矚目的對決
    「洪王之戰」可能成為臺灣2020年「大選」除臺灣地區領導人選戰之外最受矚目的一場對決。國民黨中常會4日下午通過第12梯次「立委」選舉提名名單,洪秀柱確定代表藍營參選臺南市第6選區,對戰綠營的王定宇。洪秀柱是國民黨前主席,王定宇是現任民進黨「立委」,「洪王之戰」可能成為臺灣2020年「大選」除臺灣地區領導人選戰之外最受矚目的一場對決。洪表示,去年「九合一」的勝選雖值得歡欣,但不能就此掉以輕心,批評民進黨執政問題沒有解決,「我們不能夠再讓他們執政四年」。洪同時喊話「我承擔、我努力、我們會勝利」。
  • 期待一場理性的「雙英」對決
    接下來,島內外的聚焦即將移至2012的「雙英」(馬英九與蔡英文)對決中。臺灣《中央日報》網絡報今日刊載社評指出,在權力的誘惑下,蔡英文似乎已經與「撒旦」開始進行靈魂交易,這也是許多權力競逐者都走過的歷程。我們希望「雙英」不要只是過去選戰的複製而已,而是讓人耳目一新的君子之爭。這也是絕大多數民眾的期待。  全文摘編如下:   民進黨的初選在日昨落幕了。
  • 《最強大腦之燃燒吧大腦》國際賽「生死戰」數獨與莫比烏斯環相遇
    在第一場國際賽比拼中遺憾以1:2的比分落後,讓一路跟隨《最強大腦之燃燒吧大腦》走來的觀眾都忍不住為中國戰隊捏了把汗。國際賽第二場萬眾矚目積分賽制讓本場成為「生死戰」雖然距第一場國際賽落幕已過去一周,但觀眾間有關節目的討論仍在繼續。
  • 最難熬的成皋滎陽之戰:劉邦與項羽間的王者對決
    彭城之戰,把蒸蒸日上的劉邦一下打到了人生谷底。劉邦即將迎來他一生中最難熬的兩年零三個月:成皋滎陽之戰。1.成皋滎陽之戰第一階段:失勢寡助,那就招勢造勢得道未必多助,失道未必寡助;得勢才能多助,失勢必定寡助。
  • 【教程】html+css零基礎入門教程之CSS邊框
    另一方面,如果元素沒有任何文本,假設它是一個表格,其中只包含圖像,那麼該表的邊框顏色就是其父元素的文本顏色(因為 color 可以繼承)。這個父元素很可能是 body、div 或另一個 table。CSS 定義單邊顏色還有一些單邊邊框顏色屬性。