从 !important 到关于叹号的 !一切 - 开源中国社区
从 !important 到关于叹号的 !一切
无量 2012年05月07日

从 !important 到关于叹号的 !一切

无量 无量 发布于2012年05月07日 收藏 13 评论 28

有免费的MySQL,为什么还要买? >>>  

!important 的困惑

我的邮箱里有一个 label 是“!important”,当初是取义自 CSS 的 !important,想借用“!important”的“重要”之义来标注重要邮件。后来就后悔了,由于 !important 这种叹号前置的格式像极了叹号作为逻辑非运算符的用法(为啥这句怎么读怎么像病句),每次用这个 label 的时候,都会有种在说这封邮件其实并不重要的感觉。 这种困惑最终蔓延到写 CSS 的过程中!终于有一天我被这叹号折磨得无法忍受了!这 !important 到底是怎么来的!用叹号表示否定又是怎么来的!

// 常用叹号好伤神,刚刚打着打着情绪就莫名其妙激动起来了…

对 !important 这种古怪表达方式困惑的人当然不只我一个,stackoverflow上有个人也提了类似的问题:“为什么 CSS 和 C-based (的)语言中叹号的涵义相反?”他还问道:“除了 CSS,还有什么语言是用叹号表达肯定而非否定的呢?”(随后有人提醒他,自然语言就是其中一种…) 回答很有趣,是这样说的:

在 !important 中,叹号更像是一个转义符,和 important 是一体的,而非操作符。它本身并不像你说的那样带有肯定的涵义。……选择用叹号的原因有可能是因为在非程序语言中,叹号有获取注意力的作用。或许将它写成 important! 或者 ¡important! 更容易理解,只不过 !important 更容易解析,打起来也更方便。

虽然这段解释很合理,但还是没法解决 !important 造成混淆的问题。改成 !unimportant 肯定更离谱了(除非你是用 More CSS,谢谢 @Nemo_A 告诉我这么有意思的东西,注意看页尾的 copyright 信息),有人提议说把 !important 改成 !!important 就可以都说得通了,这想法太天才了,建议 More CSS 可以把这个建议纳入下一版。

More CSS

More CSS 的 !unimportant 用法

// 我不知道怎么过渡了。请大家把这里想像成自然和谐的过渡语句。

带着开始的那些感叹开始寻找叹号表示 not 的起源,从亚里士多德到布尔到丹尼斯里奇,都没什么有趣的发现。但是考据的乐趣并不是找到问题的终极答案,而是过程中发现的各种花边消息(这其实是一直以来在没有找到答案的时候为了安慰自己说的话)。叹号的故事还是蛮有意思的。

关于叹号的 !一切

  • ! 的起源:一种说法是说来源于拉丁语中对愉悦的感叹(io),”i”写到”o”的上面。
  • ! 可以念作 “Bang”,因为漫画中经常使用对话泡泡里一个 ! 来表示枪声。
  • 最早的打字机键盘中并没有叹号。叹号的打法是先打一个句点“.”,再退回去,补打一撇“’”,拼成一个“!”。叹号出现在打字机键盘上是在 1970s,大约是 QWERTY 键盘发明的一个世纪之后。
  • 含有叹号的地名:
    • 魁北克有一个地名叫 Saint-Louis-du-Ha! Ha!
    • 另外魁北克还有两个海湾和一条河的名字是以 ha! ha! 结尾的。
    • 英国有一个小镇叫 Westward Ho!,取名自 Charles Kingsley 的小说Westward Ho!
    • 美国哈密尔顿 (Hamilton) 在1986年为了宣传改名为 Hamilton!

       

      Saint-Louis-du-Ha! Ha!

      连路牌也成为了景点

  • 雅虎 (Yahoo!) 之所以在 Yahoo 后面加了一个叹号,是因为 Yahoo 已经被 EBSCO 注册了,加一个叹号在后面实属无奈之举
  • New York Times 评论专栏编辑 David Shipley 和 Hyperion Books 的主编 Will Schwalbe 合著了一本电子邮件撰写指南,名字大概叫做 “Send: The Essential guide to Email for Office and Home“。书中指出电子邮件撰写中,使用叹号可以更好地表达期待和友好。比如 “Thanks!!!” 会比 “Thanks.” 更友好。
  • F. Scott Fitzgerald(《了不起的盖茨比》作者)反对使用叹号。他认为用叹号就好比笑自己讲的笑话一样。// 谁去翻翻《了不起的盖茨比》,里面真的没叹号吗?

无法控制地跑题

Cut out all those exclamation points. An exclamation point is like laughing at your own jokes.

– F. Scott Fitzgerald

// 要是我,会更喜欢这样说:

Cut out all those exclamation points! An exclamation point is like laughing at your own jokes!

– F. Scott Fitzgerald!

最后,贴个两年前关于叹号的笑话吧(其实通篇没有一个叹号出现):

本站文章除注明转载外,均为本站原创或编译。欢迎任何形式的转载,但请务必注明出处,尊重他人劳动共创开源社区。
转载请注明:文章转载自 开源中国社区 [http://www.oschina.net]
本文标题:从 !important 到关于叹号的 !一切
分享
评论(28)
最新评论
0
0
H!
0
!!
0
0
!
0
隐约记得freemarker里面有个用法${text!""},going down...
0
我一直以为是因为键盘里面没有≠
所以就用 != 表示不等于
然后!就表示not了
0
!
0
!
0
!
0
&这样不好么,那么多符号怎么偏偏用!呢,其实我并不反感使用感叹号,我从来都没那么认为过。从一开始就感觉那是重要的意思。但我的同事还真有认为那是不重要的意思。
0
0
!
0
!
0
你妹的#important!;
0
!
0
<input>
0
!
0
H!
0
我来破环美感。
顶部