`

从GMail认识的W3C网页标准和Ajax

阅读更多

不可否认,W3C网页标准刚出来的时候的确很吸引人。那时因为firefox的出现,冲击了浏览器市场,使得大家为了一个小狐狸,而掀起一场网页标准的风波,但是对于设计师来说带来什么?在这场风波我看到的最多就是技术的泛滥。
  和一些designer聊天,第一句话就问,“你的网页标准化了”吗,“你的网页又有几处错误”。无形中这些话就给我们这些designer来说带来很大压力。每次更新网页都很害怕因为一些小小的改动导致一些小错误。似乎W3C成了一种追捧现象。就如同前段时间的Ajax热一样。但我们更加是应该理性分析,我们什么时候才应该用到这些技术。

我举一些例子

1.Div和Table之间的误会
  
  刚开始接触到W3C的时候,首先面临的问题是要把传统的table布局给去掉,利用Div+CSS做结构。这个是网页标准化的精髓。但是问题来了,大部分人都因为这个而误会说 "Table没有用了" "你的网页还有table阿,out了"。其实不然,如果这样想,那就大错特错了。 font>W3C只是要求不用table布局,没有说table不标准呀。
  每一个web标签都有它存在的意义,不是说完全遗弃某个标签。 我们应该合理利用好每一个标签,table并没有被放弃,相反的table只是回到他的本职工作---用来显示数据,当你要在网页上显示大量的表格数据的时候,就应该用table了,这样你可以花最少的时间,达到最好的效果。假如你一定要用<ul><li>来模拟<table>也可以,但是你将因此耗费过多时间在CSS上面,增加很多多余的代码量,而且还不一定能达到你想要的效果。

  最有说服力站点:GMail 你说它不标准吗?不是,你说它全是Div+CSS吗,也不是。它是Div+CSS+Table结构,它合理了利用好了每个网页标签。严格来说GMail并没有按照W3C XHTML 1.0标准去做。首先,它的网页没有用到 XHTML 1.0 的过渡定义。因为它没有办法用,如果用了这个定义去设计GMail。估计大家看不到那么出色的程序了。即使没有用这个标准定义,但是它的CSS能写出这么好的兼容性也是一种最大的成功。


2.Ajax我们是否真的需要
  最先带出这个话题的是GMail,这个时候就开始很多人开始研究这个老技术的混合体。现在也开始在泛滥,但是很多时候我们不需要Ajax。简单的说,对于一个普通站点来说,你要宣传就必须要让搜索引擎找到你,但是Ajax最大的问题就是搜索引擎无法判断你里面的内容。就算你的技术多么成熟,做出来的东西不方便宣传,那也是一种失败。
  Ajax的主要是为提高程序的易用性为主,所以很多时候都会应用在后台程序中(当然部分操作也可以应用到前台)。来增强程序的人性化,以及易用性。
  Ajax最主要是实现了异步更新的功能,这样使网页不用同步显示更多信息。有效的减轻了服务器的负担。而实现异步主要是因为Javascript,而不是XML。为什么这样说呢,没有XML,Javascript同样可以实现异步。但是没有Javascript,光有XML也没用。XML只是作为一种数据来源。我分析了GMail的代码很长一段时间了,又一点很让我感到很奇怪,GMail用到XML的地方其实很少。它主要还是利用了大量的Javascript。里面用得最多的是Javascript和iframe, 它解决Js回退靠的是iframe、输出邮件,它直接输出了Javascript代码到一个iframe的页面里面(直接看代码就可以看到),然后又利用Javascript重新构造这些JS数组,然后输出到网页上。中间的JS数组其实已经是直接写到了页面的,这样的过程用到的XML就很少了。整个GMail用得最多的是异步的JS方式。这样一来GMail也是传统,都是框架在利用JS控制着这个网页。而不是我们现在很多Ajax程序,一个页面上全是读XML,这样的方式是比较愚蠢的。
  我们要做的是利用好Ajax里面的 Javascript ,而XML只能作为必要的辅助。
 
  呵呵,文章结束了,以上均是我工作中遇到的问题的一些总结性的看法。
希望大家不要因为这两个技术而“误入歧途”,重要的是理智考虑我们的网页如何给这两个技术一个合理的位置。

  最后,希望有能力的朋友多去研究研究GMail,你会发现很多和业界炒作的所谓新技术有很多出入。
  我对GMail的评价是一个很合理利用了以上两点技术的一个很成功的传统程序。

分享到:
评论

相关推荐

    Ajax技术综述

    如今,Ajax广泛应用于各种在线服务,如Google Maps、Gmail等,显著提升了网页应用的性能和用户满意度。随着Web技术的持续发展,Ajax技术将继续扮演重要角色,推动Web应用程序向更高效、更丰富的方向发展。

    Ajax入门Ajax入门

    随着技术的发展,W3C组织正致力于标准化XMLHttpRequest对象,以确保不同浏览器间的兼容性和一致性。现代的前端开发框架,如jQuery、AngularJS和Vue.js等,都提供了更高层次的API来封装XMLHttpRequest,使得开发者能...

    全面剖析 Ajax XMLHttpRequest对象

    W3C正在为XMLHttpRequest制定标准,以确保跨浏览器的一致性和兼容性。随着前端开发的不断发展,XMLHttpRequest对象的功能也在不断扩展,例如增加了withCredentials属性以支持跨域请求携带cookies,以及progress事件...

    ajax、spring、ejb试题

    6. text-overflow 不属于 W3C 的 CSS2 规范。 7. Eclipse 不能用来调试浏览器中的 JavaScript。 8. xhr.status 为 404 表示 Http 协议的响应状态服务器出错。 9. 函数附属于它所附加到的对象上,只能通过该对象访问...

    AJAX新手基础教程课程

    3. W3School:适合初学者的在线教程平台,包含AJAX教程。 4. Stack Overflow:解答开发过程中遇到的问题。 希望这篇AJAX基础教程能对初学者有所帮助,记住,实践是最好的老师,理论结合实际项目,你会更快掌握AJAX...

    Ajax整理

    现在,它在IE7及更高版本中被实现为窗口对象属性,且W3C正在推动其标准化。 XMLHttpRequest对象具有多个属性、方法和事件,使得开发者能精确控制HTTP请求和响应流程。以下是一些关键特性: 1. readyState属性:...

    类似GMAIL的Ajax信息反馈显示

    DOCTYPE HTML PUBLIC “-//W3C//DTD HTML 4.01 Transitional//EN” “http://www.w3c.org/TR/1999/REC-html401-19991224/loose.dtd”&gt; &lt;HTML xmlns=”http://www.w3.org/1999/xhtml”&gt;&lt;HEAD&gt;&lt;TITLE&...

    AJAX教程

    这个功能当时并没有引起注意,直到2004年Gmail发布和2005年Google Map发布,才引起广泛重视。2005年2月,AJAX这个词第一次正式提出,指围绕这个功能进行开发的一整套做法。从此,AJAX成为脚本发起HTTP通信的代名词,...

    全面剖析XMLHttpRequest对象

    随着W3C对XMLHttpRequest对象的标准化工作,不同浏览器之间的实现差异正在减少,这使得跨平台的Web应用开发变得更加便捷。 总之,XMLHttpRequest对象是现代Web开发中的基石,它的存在使得Web应用可以实现更加丰富和...

    xheditor v1.0.0 rc2 build 100401

    调整:为兼容w3c标准,原xheditor专有属性初始化模式,变更为直接在class中写参数,例:class="xheditor {skin:'o2007blue'}" 调整:为兼容电驴、快播等特殊URL,超链接、图片、FLASH和多媒体4个按钮的批量插入分隔...

    《程序天下:JavaScript实例自学手册》光盘源码

    1.16 判断页面是否添加了W3C声明 1.17 屏蔽网页中的脚本 1.18 以频道模式打开页面 1.19 自动识别网页类型 1.20 在网页中动态添加Script脚本 1.21 用JavaScript随机修改页面的标题 1.22 判断网页加载完毕 1.23 嵌入...

    程序天下:JavaScript实例自学手册

    1.16 判断页面是否添加了W3C声明 1.17 屏蔽网页中的脚本 1.18 以频道模式打开页面 1.19 自动识别网页类型 1.20 在网页中动态添加Script脚本 1.21 用JavaScript随机修改页面的标题 1.22 判断网页加载完毕 1.23 嵌入...

Global site tag (gtag.js) - Google Analytics