Month: May 2007

[转载]啊,太不好了

 
啊,太不好了
2007-05-22 00:15
这是一句没一个常和枸杞说话的人很容易被感染于是就也开始说的一句话。这句话大概是来自有经典语录传世的环伟成的某句话,但具体是哪一句我就不得而知了。这句话有如此惊人的魅力,一致直令我很困惑,今天,我借此机会,思考了一番。

首先,我觉得“啊”是十分好的声明方式,用“啊”作为任何一句话的开始,可以使语句可读性更强。可以近似的认为,它是等同于Dim或<B></B>的。我提倡在说任何话之前先“啊”,以此来把听众的注意力初始化。当然,实践证明,经常“啊”会使体听众的System Idle Process长期处于0的状态,最终导致内存溢出或被强行断电。与“啊”齐名的还有“哦”,通常用来回复以“啊”起始的句子。“太不好了”之前一般使用“啊”。这句的标准回复是“哦,太好了”。

然后再来谈一谈“太不好了”。“不好”和“糟”是不相同的。确切的说,“不好”是“糟”和“不好不坏”的并集。使用不好说明了现状还有一定的概率处于不十分糟的状态,也就是说现在的状况不确定,在“糟”与“一般”之间徘徊。细细品味,是一种包含了与多信息的概括。仅用“不好”会显得语气生硬而且没有气势,为了将感情色彩锐化,这里加入了“太”。这个“太”不但表达了“不好”的程度,而且也与“啊”交相辉映,相辅相成。起到了承上启下,画龙点睛的作用。“了”是一个虚词,没有实意,但在这里却不可替代。“太不好吗”或“太不好呢”都表达不了这个意思。因为“了”表示造成我们认为“太不好了”的原因已经开始作用于我们了。区别于“啊,太不好了 -t 300”。

这样一句位完美无缺的话,你们既然知道了,就尽情地使用吧。

我正在改写这世界。

标准化是整个世界的趋势。任何行业如果没有一个行业标准,那么生产只能达到很有限的程度。一个新兴的行业,一开始混乱是不可避免的。各家公司相互竞争,都希望世界接受他们的标准。但在这样一个自由的世界里这几乎是不可能的。当生存受到威胁的时候,互相竞争的公司就会一起合作,联合起来制定一个行业标准。当行业有统一的标准的时候,说明这个行业已经正在走向成熟了。
XHTML, CSS, W3C DOM, ECMAScript, 这些名词将变得越来越常见。 DIV + CSS 的布局方式也终究有一天会完全取代传统的 Table 布局方法。

我在工作室是普及标准的先驱,从开学就在宣传使用标准的方法架构网站,我做的网站也按照这种方法做,并开展了一次讲座(http://www.myjoin.cn/2005/wdhisshow.php?id=216)。不过讽刺的是我全盘使用 DIV+CSS 布局的网页在非 IE 浏览器中显示都会有问题(尽管内容可阅读),而如果使用 Table 就不会产生这个问题。能让页面同时在 IE6 和 IE7 中显示都正常就已经不错了,不敢奢望它还能在 Firefox 和 Opera 都显示正常——只要办到可访问内容就行了。
现在我们可以照顾 IE6 的用户,当 IE6 和 IE7 中显示效果不一样的时候放弃 IE7 。但想想一年以后, IE6 和 IE7 的用户数量应该已经差不多多了,那时必须保证页面在 IE6 和 IE7 中的显示效果都正常(这不是说必须完全一样,但不能有错误)。
提到 IE6 ,很多网页开发者都会义愤填膺,那实在不是一个好的浏览器,却因为被捆绑在 Windows XP 中而被广泛普及。IE7 是相当符合标准的浏览器(尽管还有些能让我发现的 CSS 的 Bug),大多数出问题的时候,页面在 Firefox 、 IE7 和 Opera 中显示都正常,唯独在 IE6 中显示不正常。这种由 Bug 引起的问题解决起来需要一些运气,因为没有什么固定的方法,说不定怎么弄就会好。比如我以前遇到过背景填充欠缺的问题,结果在后面加一个空的 div 就好了。
IE6 还不支持
但是我们也不能过分讨伐 IE6 ,人家毕竟是6年前发布的浏览器,所以对 CSS 标准支持得不好也是正常的,而且微软向来不甘心屈服于标准,只是形势所迫使得它不得不在新版本的浏览器中提高对标准的支持。
但是我们使用标准开发网页还是有好处的——开发和维护的效率成倍提高。要改变布局,以前用 Table 布局的时候要大动干戈,现在只需要改 CSS 规则中的几个数字。而且在非传统设备(手机等)上浏览网页时可访问性大大提高,用 Table 布局的话浏览器很可能会把内容挤到屏幕外,但用 Div 的话这种情况就好多了。而且现代浏览器更钟情于用标准写的网页。

同一元素的同一属性也会被不同浏览器解释成不同的样式。对我们影响最大的就是 width 的计算方法。在 IE 中 width 不包括 padding ,但 Firefox 包括。这样就十分崩溃了。根据不同浏览器对 CSS 的语法的支持特性可以写出一些 CSS 代码,使得某一种浏览器只识别一些规则,这样便可针对不同浏览器书写不同规则(http://css-discuss.incutio.com/?page=BoxModelHack),但这样终究不是正规的方法(尽管目前来讲这几乎是最好的解决办法)。我们期待未来的浏览器(IE8, IE9, …; Firefox 3, Firefox4, …; Opera10, Opera11, …)和未来的 CSS3 标准能够统一这些不一致的地方。无论对于网页开发者还是标准的制定者和浏览器、所见即所得网页编辑工具的开发厂商,对标准的普及还有很长的路要走。