最近網上再度興起了css布局和table 布局的爭論。我最初頗有些不以為然:我原以為css 布局的意義早已深入人心,卻沒想到還有這么多設計師及開發人員持有異議。
靜下心來看罷大家的討論,一番細想,覺得原因可能有兩個方面:
所以,我們在推崇css布局的同時,無需為了證明它的優越性而把table本身貶得一文不值。日常開發中,也無需激進得完全拋棄table。table本身有語義,該顯示數據表格的時候就應該使用<table>;在開發過程中,一些需要權衡成本的場合用table+css的布局也未嘗不可。在這方面,很欣賞google 和 facebook 前端工程師們的務實做法。大家可以去關注下facebook 上常見的帶半透明陰影的彈出對話框,就是使用<table>來制作的,同樣非常的精妙。
這一番的爭論,結合近年來web標準的發展,讓我開始思考web開發中改良和改革的區別。
xhtml 2試圖直接進化到xml,宣布與html的決裂。這曾經讓我這個傳統的html開發者感到恐慌。而當我看到whatwg組織提出html5(最終被w3c認可)的時候,它的溫良的改進讓我感覺親切得多,事實也證明,html5正越來越向我們走進。而douglas crockford甚至覺得html5都太猛烈了,提出了html 4.2的改良方案。
再看javascript, ecmascript 4 將javascript 改得天翻地覆,所幸技術委員會在最終階段回歸理智,重新提出的向下兼容的esmascript 3.1 顯然得到更多真正戰斗在一線的開發人員的認可。
改良,而非血淋淋的改革,也許才是推動技術發展的更實際、更合情合理的方式。web標準的演進是如此,產品或項目的升級是如此,甚至社會制度的建設亦如此。
新聞熱點
疑難解答