<u> 的故事(原:Re: [Bug 10838] New: Make <u> conforming.)

(11/08/06 2:30), John Hax wrote:
> 老贴顶上来。

歡迎隨時重翻舊帳。

> The |u
> <http://www.whatwg.org/specs/web-apps/current-work/multipage/text-level-semantics.html#the-u-element>|
> element represents
> <http://www.whatwg.org/specs/web-apps/current-work/multipage/rendering.html#represents>
> a span of text with an unarticulated, though explicitly rendered,
> non-textual annotation, such as labeling the text as being a proper name
> in Chinese text (a Chinese proper name mark), or labeling the text as
> being misspelt.
> 
> 老实说,我不认为专名号是一个足够支持U的case,因为专名号太罕用,如果真的
> 有专名号需求,用<b class="pn">或<a href="#dfn_xxx">基本可以满足。况且现
> 在U又不完全等同于专名号——拼错的字也用U……
> 
> 结果是,U这个标签很可能成为一个奇特的鸡肋——和过往一样,所有出现U的地方其
> 实大多是误用……

這個結果我的解釋是這樣,有意識的想要使用語意化元素的人,看到這段莫名其妙
的解釋,若不是恰好是想用於專名號或是拼錯的字的話就最好不要用 <u>。當然如
果你是一個寫 WebApp 的 HTML 編輯器的,在這種使用語意化元素有困難的情形用
<u> 就比較無所謂。

你提到 <b class="pn"> 可行,事實上也有人提 <i class="pn"> 可行,可見這都
實在也不是什麼使用語意化元素的好解法(也可能不合規範上 <b> 與 <i> 的語意
敘述),我也從來沒看過有人在 <b>/<i>/<u>/<s>/<small> 這些元素上用 CSS 樣
式的(歡迎舉證,我十分有興趣)。當然如果你說這太罕用所以說想用專名號就該
用 <span>,我先不予置評。

內嵌(inline)元素我看不誤用實在太困難了,我到現在還不理解 <b> 到底在講
什麼,之前也討論過 <em> 與 <strong> 有什麼差別[1],我想除了語言學家以外
分不太出來吧。

我不太同意專名號是罕見的,我媽媽要去當家教用的數學參考書上就有用到專名號
(當然這是台灣的情形),當然這不是在 Web 上的情形,而可能是 EPUB 所需,
這點在爭論的時候也有提到。拼錯字的 <u> 我倒還有個中文實例(不是我假造
的),請看[2],這好像是英文的用法,英文維基有說明。

[1]
http://lists.w3.org/Archives/Public/public-html-ig-zh/2011Mar/thread#msg310
[2] http://www.w3.org/html/wg/wiki/UseCasesOfUElement

> 有谁知道这个U是怎么又加上去的?

罪人在此。

這段(很長的)故事是這樣的,簡短版我在[3]裡提過

[[
(<u> 的事情跟我們多個月前討論過[4][5],而間接導致了兩個月前 HTML 工作組
做出把 <u> 拿回來的決議,但是一方面大家沒什麼共識,又不是很有技術的討
論,因此太羞愧就沒有跟大家報告了。大家有興趣可以去看決議前最後關頭的問卷
(straw poll)[6],對 HTML 工作組的運作情形有興趣的可以在這個郵件群問問)
]]


[3] http://lists.w3.org/Archives/Public/public-html-ig-zh/2011Jul/0006
[4] http://lists.w3.org/Archives/Public/public-html-ig-zh/2010Sep/0080
[5]
http://lists.w3.org/Archives/Public/public-html-ig-zh/2011Jan/thread#msg62
[6] http://www.w3.org/2002/09/wbs/40318/issue-144-objection-poll/results

== 又臭又長版 ==

我其實本來也不是對這個其實怎麼樣都好的東西很在意,不過由於

1) 當時興趣小組在討論專名號,我才訝異的發現到當時的 HTML5 有 <b> <i> 沒
有 <u>,十分不解
2) 對於 <i> 竟然有「船名」這個絕對不國際化的西方專有用法很氣

就發了這個 bug,後來被 Hixie REJECT 我也沒什麼繼續爭的意思(因為其實沒什
麼意見,加上當時做比較多 CSS 的事情),後來在十一月 W3C TPAC 會議的時候ˊ
這個 bug 被一個 Mozilla 的約聘人員 Henri Sivonen 提出來講,他是支持 <u>
的,理由是「<u> 不合規範的話會讓使用驗證器的人看到很多不是重要的錯誤 —
使用 <u>」(他是 validator.nu 的開發者之一,我們的 Mike Smith 是另一
個),後來他就叫我寫一個提議書(HTML 工作組的流程之一),我想想反正這技
術層次不高,我的瀏覽器經驗也不夠做一些比較重大的標準貢獻,就接下了這件事
寫了個更改提議書(change proposal)[7] ,在這中間還請大家做了個調查[8]。

後來我跟 Hixie 在 WHATWG IRC 頻道上爭這意兒之後,也不會覺得他講的全無道
理,就幫他起草了不更改提議書(no change proposal)[9](也就是正反都我寫
的),基本上也是覺得不要浪費別人寶貴的時間 :p。後來經過了最後關頭的反對
意見問券(straw poll)[6](這個才是重點,提議書我覺得重要性反而沒那麼
大)之後, HTML 工作組主席們(Sam Ruby 、Maciej Stachowiak、Paul
Cotton)做出了採納更改提議書的裁決[10]。

更改提議書雖然是我主筆,但是作者包含 Henri Sivonen 還有 Google 的一個約
聘人員 Areyh Gregor,他們當然是不知道專名號這個東西,不過這個更改提議書
的共識就是 <u> 應該合規範,提議書也提到只要 <u> 合規範,規範文字由編輯
(也就是 Hixie)決定沒關係,裡面也講了有的沒有的跟 HTML 設計原則不太有關
西的理由,像是大部分輸出 <u> 的編輯器不會願意改之類的。雖然提議書留給
Hixie 決定規範的具體敘述,不過我的提議還是有部份被接受,包括把 <i> 的
「船名」改成「西方文字下的船名」,<u> 的範例用上專名號跟錯字等等。由於
Hixie 是崇尚語意化標籤的人,所以現在的 <u> 的語意,特別是範例前面的那斷
話就變成這麼難懂了。事實上我的另外一個提議[11]是近似於把 <u>/<b>/<i> 的
語意定義成與 <span> 相同,就是沒有語意(註:這不代表他們是表象標籤,就像
<span> 也不是表象標籤),不過這還沒被接受,不過我想這最接近大家心目中的
<u>/<b>/<i> 了。現在 <u>/<b>/<i> 的定義也都很扭曲,有人真的懂嗎(比如說
我就看不太出來 <i> 的「船名」跟「夢境」有什麼共通點)?

幾個有趣的發現
1) 雖然 Hixie 這個人完全不相信語意網,他對語意標籤卻有某種程度的堅持,老
實說很意外。
2) 同樣是 Google 的人,而且 Hixie 還是 Areyh 的上司,在外也會有不同的意
見,可見這些人都是很好的人 :)

其他想法?

[7] http://www.w3.org/html/wg/wiki/ChangeProposals/UShouldBeConforming
[8]
http://lists.w3.org/Archives/Public/public-html-ig-zh/2011Jan/thread#msg62
[9] http://wiki.whatwg.org/wiki/Change_Proposal_for_ISSUE-144
[10] http://lists.w3.org/Archives/Public/public-html/2011Apr/0212
[11] http://www.w3.org/Bugs/Public/show_bug.cgi?id=12178


故事結束,歡迎大家多提供一些技術上比較有趣的提案(如新標籤),不要老是討
論語意!


此致

呂 康豪(Kenny), 中文興趣小組W3C連絡人
推特: http://twitter.com/kanghaolu
Google+: https://plus.google.com/112088462407783855918/posts
新浪微博: http://t.sina.com.cn/1950042164

Received on Friday, 5 August 2011 21:05:01 UTC