不可否认,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广泛应用于各种在线服务,如Google Maps、Gmail等,显著提升了网页应用的性能和用户满意度。随着Web技术的持续发展,Ajax技术将继续扮演重要角色,推动Web应用程序向更高效、更丰富的方向发展。
随着技术的发展,W3C组织正致力于标准化XMLHttpRequest对象,以确保不同浏览器间的兼容性和一致性。现代的前端开发框架,如jQuery、AngularJS和Vue.js等,都提供了更高层次的API来封装XMLHttpRequest,使得开发者能...
W3C正在为XMLHttpRequest制定标准,以确保跨浏览器的一致性和兼容性。随着前端开发的不断发展,XMLHttpRequest对象的功能也在不断扩展,例如增加了withCredentials属性以支持跨域请求携带cookies,以及progress事件...
6. text-overflow 不属于 W3C 的 CSS2 规范。 7. Eclipse 不能用来调试浏览器中的 JavaScript。 8. xhr.status 为 404 表示 Http 协议的响应状态服务器出错。 9. 函数附属于它所附加到的对象上,只能通过该对象访问...
3. W3School:适合初学者的在线教程平台,包含AJAX教程。 4. Stack Overflow:解答开发过程中遇到的问题。 希望这篇AJAX基础教程能对初学者有所帮助,记住,实践是最好的老师,理论结合实际项目,你会更快掌握AJAX...
现在,它在IE7及更高版本中被实现为窗口对象属性,且W3C正在推动其标准化。 XMLHttpRequest对象具有多个属性、方法和事件,使得开发者能精确控制HTTP请求和响应流程。以下是一些关键特性: 1. readyState属性:...
DOCTYPE HTML PUBLIC “-//W3C//DTD HTML 4.01 Transitional//EN” “http://www.w3c.org/TR/1999/REC-html401-19991224/loose.dtd”> <HTML xmlns=”http://www.w3.org/1999/xhtml”><HEAD><TITLE&...
这个功能当时并没有引起注意,直到2004年Gmail发布和2005年Google Map发布,才引起广泛重视。2005年2月,AJAX这个词第一次正式提出,指围绕这个功能进行开发的一整套做法。从此,AJAX成为脚本发起HTTP通信的代名词,...
随着W3C对XMLHttpRequest对象的标准化工作,不同浏览器之间的实现差异正在减少,这使得跨平台的Web应用开发变得更加便捷。 总之,XMLHttpRequest对象是现代Web开发中的基石,它的存在使得Web应用可以实现更加丰富和...
调整:为兼容w3c标准,原xheditor专有属性初始化模式,变更为直接在class中写参数,例:class="xheditor {skin:'o2007blue'}" 调整:为兼容电驴、快播等特殊URL,超链接、图片、FLASH和多媒体4个按钮的批量插入分隔...
1.16 判断页面是否添加了W3C声明 1.17 屏蔽网页中的脚本 1.18 以频道模式打开页面 1.19 自动识别网页类型 1.20 在网页中动态添加Script脚本 1.21 用JavaScript随机修改页面的标题 1.22 判断网页加载完毕 1.23 嵌入...
1.16 判断页面是否添加了W3C声明 1.17 屏蔽网页中的脚本 1.18 以频道模式打开页面 1.19 自动识别网页类型 1.20 在网页中动态添加Script脚本 1.21 用JavaScript随机修改页面的标题 1.22 判断网页加载完毕 1.23 嵌入...