iT邦幫忙

0

網頁歷史-table布局排版是怎麼淡出的呢!?

  • 分享至 

  • xImage

想了解一下 據我所知 現在大家流行使用flex或grid 也許也有float布局
最近因為了解DW 剛好發現過去寫網頁的習慣
原來會使用table布局 要說很難用嗎 其實也有便利的地方

很好奇
是因為以前沒有flex的語法嗎!?

怎麼漸漸從table佈局到什麼都用div去語意化的寫標籤了
又是大概什麼時間點發生這種革命的呢

table過去一定也有風風光光的一面吧!??
覺得很有趣呢 希望網頁製作的前輩們來分享 講古~~

看更多先前的討論...收起先前的討論...
table 也不是不能用,而是因為SEO認為table的內容要INDEX 很難,所以很難收錄,加上 RWD的需求,table 很難應付複雜的顯示環境,因此DIV 跟 FLEX 才被大量的應用,因為用戶端環境的複雜化,DIV 跟 FLEX 的彈性才能適應這些複雜化的硬體環境,不然移動裝置與桌面的設計真沒有一致化的一天,用table真的不用想了,但是table也沒那麼不好用,在某些狀況下 table 還是可以存在,例如用到簡明表格的時候,table就很好用
@窮嘶發發發 您真的很專業,怎麼什麼都懂,好強!
下次可以放在回答裡面呀
也許能選您為最佳解答呢⁽⁽٩(๑˃̶͈̀ ᗨ ˂̶͈́)۶⁾⁾
Hans5300609 iT邦研究生 4 級 ‧ 2023-03-29 05:37:59 檢舉
推一個以前看大大的
Layout*視覺與網頁設計的精湛攻防 by閃光洽
https://layout.hinablue.me/
自從智慧型手機這種直屏方式顯示的設備出現,TABLE就成了破表的元兇,永無止盡的兩指放大縮小,預設字體小不嚨咚看字看半天的排版,就愈來愈被嫌棄了
froce iT邦大師 1 級 ‧ 2023-03-29 08:11:50 檢舉
html是標記語言(Markup Language),table在這語言的框架下本來就只是表格而已。
從SEO的角度看,我遇到table本來想要解析裡面的內容,但你用來排版,裡面是複雜格式,我當然給你低分。
從手機端來看,table是固定的,你給幾欄,一列永遠就是幾欄,對排版很不容易。
以前是因為CSS語法沒那麼多,position遇到某些布局像是垂直置中很難寫,所以都會用table來處理,現在工具多了,當然能不用table來做佈局工具就不做。table就回歸到正常的表格標示。

這也是前端為啥會痛恨ie的原因之一。
@推樓上各位的分析 原來如此 瞭解更深一層了
還有謝謝分享Layout*視覺與網頁設計的精湛攻防 by閃光洽 這個網頁
超級帥的!!!
我之前考丙級還在用FrontPage
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中
1
㊣浩瀚星空㊣
iT邦大神 1 級 ‧ 2023-03-28 20:33:45
最佳解答

TABLE排版啊。

其實這段歷史還真的很長久。
在早期IE6年代。

其實使用DIV排版真的很痛苦。
當然的區塊定位還沒那麼完善。就連想要透空背景圖。還得花費心思處理。
所以一般區塊性很多的。就會理所當然的使用TABLE了。

我還記得我那時。還玩過TABLE包TABLE。如果沒用像DW這一類的編輯器。
說真的也還真不好調整。

我大約是在JQUERY0.X版那段時間。才開始捨棄TABLE排版。
不過一般的報表還是會用TABLE。只是排版的部份就改換DIV之類的東西。

因為當時用JQUERY。使用TABLE的話。反而不太好操控。
那時的CSS才剛準備順手。但寬高還是應用在元件屬性值上。而非在CSS上定義
(當時習慣還改不掉)

總之,TABLE排版這件事。我的確也幹過。

看更多先前的回應...收起先前的回應...

DW寫table的確有它的厲害之處呢!
原來如此是IE6年代呀。
不過最近有看到最新一代的DW,發現其實長的挺好看的呢,
就像是個所見即所得的VScode(乍看之下啦XDDD)

我本人使用過的DW是CS6版,的確很老舊的fu就出現了
最新版的DW卻有讓我驚艷的感覺(??
也許它還能殘喘一陣子呢
不過聽說考證照大多還是舊版本 這就挺糟糕了哈哈哈

這個我之後會想另外發問:關於為什麼丙級網頁的試題內容遲遲未更新
我朋友分享給我看 術科的網頁切版十足就是20年前的樣子XDDDD

不過這應該是業內人士的大哉問了
就不知道it幫前輩們是否有人處於相關前線能夠透露
網頁這行真的很有趣呢~謝謝大師解惑哦(๑•ั็ω•็ั๑)!!

p.s.乙級的就有進化 不過聽說沒什麼人考 也沒什麼人拿到
證照的議題
似乎又是另一個非常巨大的深層結構了呢

因為丙級的只有基礎,不需要變動。
乙級的一般會隨著進化而更新。

但講真的,考出來沒啥用就是了。因為考的東西也只是皮毛。

題外話:
電腦相關軟體、硬體乙級我都有。只是那兩張証早就不知道跑去哪了。
因為完全沒用@@"

Hans5300609 iT邦研究生 4 級 ‧ 2023-03-29 04:57:54 檢舉

有些證照其實算是給職校學生考來報大學的技優推甄管道
只要有一張乙級就能用這個入學管道
我也跟著學校指導下考了張硬體乙級
硬體乙級訓練內容對不常接觸組裝電腦的人算是比較有概念吧
不過焊接電子和寫VB控制就...畢竟是資訊大國(實為電子代工)
壓接網路頭我從丙級就常壓壞 Orz
(然後之後工作因故要壓一堆頭...結果對方給材料是一件式的Cat6頭很難壓,我自己家裡都用二件式Cat6頭)

Hans5300609 iT邦研究生 4 級 ‧ 2023-03-29 05:21:18 檢舉

我記得接觸用table排版後內部是塞Fragment(好像就是Dreamweaver)

那時都先製作圖片版面之後圖片切版。當初我學的是PhotoImpact製作版面。
後來Adobe Fireworks專門處理這個,設定過切片(切版),可以直接匯出html產生成Table排版+Fragment的版面給Dreamweaver處理
不過那時外國早已倡導不要用table排版和禁用fragment所以也只是參考看看
產生出切片後的圖片就拿來用div製作
那時小弟正在做班網就順便學習div的使用
因為切換頁面不想要網站整個刷新所以找到jQuery來置換指定內容,那時用的已經是1.2.6版了

asp.net有table ,tablerow ,tablecell可用
jquery也有(以下九九乘法表)

let table1 = $("<table></table>")
for(let y=2;y<10;y++){
    let tr = $("<tr></tr>"); 
    for(let x=1;x<10;x++){
        tr.append($(`<td>${y}×${x}=${y*x}</td>`));
    }    
    table1.append(tr);    
}
$("#div1").append(table1);

jsfiddle

回錯地方

我只會這個...

<script type="text/javascript">                  
  document.write("<table border = 2 >")
   for (i = 1; i <= 9; i++){
    document.write("<tr>")
     for (j = 2; j <= 9; j++){
       document.write("<td>" + j + "*" + i + "=" + j * i + "</td>")
      }
    document.write("</tr>")
    }
    document.write("</table>")
</script>
1
Ray
iT邦大神 1 級 ‧ 2023-03-28 19:23:53

幫你問:

早期網頁的 layout 大多採用 table 標籤來控制, 後來逐漸改成用 div, 這是何時開始發生的轉變? 有甚麼文章在探討這個轉變?

ChatGPT 答:

早期的網頁設計通常使用表格(table)標籤來排版和布局。然而,隨著 CSS 技術的進步和Web標準的普及,這種做法逐漸被棄用。這個轉變大概是在 2000 年左右開始發生的。

使用表格(table)標籤進行網頁排版的主要問題在於,表格標籤是用來顯示表格數據的,而不是用來排版網頁的。這樣做會導致代碼冗長、不易維護和不利於 SEO。而使用 div 標籤進行網頁排版則可以更好地實現可重用性和可維護性。

有一些文章討論了這個轉變。以下是一些相關文章的參考:

"The Curse of the Table-Based Layout" (by Jeffrey Zeldman)
"Why Tables for Layout is Stupid" (by Eric A. Meyer)
"The Table Layout Resurrection" (by Rachel Andrew)
"The Tragic Death of Practically Everything" (by Bruce Lawson)

這些文章中探討了表格(table)標籤在網頁排版中的問題,並介紹了使用 div 標籤進行網頁排版的好處。

感謝!

不只要謝謝你使用了你的額度XDD(免費板我記得應該還是有額度的?)
也要感謝示範一個簡單的、精準的PROMT
下的關鍵字也值得學習。
比我發問的講話方式還要精準太多了,感恩。

花之舞 用BING無額度限制(API才有),只是每次只能連續提問15次,超過就要清除問題串了

阿摔 iT邦新手 4 級 ‧ 2023-03-29 10:17:56 檢舉

同推Bing
Skype上也可以用Bing玩了

1
sixwings
iT邦研究生 4 級 ‧ 2023-04-02 20:19:12

來參一腳,其實在 table 標籤在你意想不到的地方還被使用著,那就是 email 信件中。

原因是 email 的收信軟體對信件 HTML 語法的支援其實非常的不統一,所以最安全的做法通常會選擇比較保守的 table 語法,反而不會選用 div, flex 之類比較新的語法,以避免跑版。

謝謝分享,很實用的資訊!學習了。

我要發表回答

立即登入回答