CSS3 UI 最後草案(Last Call)反饋

http://dev.w3.org/csswg/css3-ui/

總體來說,整份規範有點舊,整份規範應該用 CSS3 裡面最老的 CSS3 B&B 都有的

  | In addition to the property-specific values listed in their
  | definitions, all properties defined in this specification also
  | accept the inherit keyword as their property value. For readability
  | it has not been repeated explicitly.

這樣每次的屬性表格裡的取值欄位不用一直重複提 'inherit'。

Candidate Recommendation Exit Criteria
______________________________________

這... 這個草案是 CR 是 2004 年的事了,這段... 錯置了吧?

Overview
________

搞不懂在目錄開始之前怎麼可以扯這麼多,功能描述的部份和 1.1 Purpose 重複了。

2.1. Definitions
________________

UA 這個詞彙的定義是 http://www.w3.org/TR/CSS21/conform.html#user-agent
,超連結可以用的更好點。(現在是
http://www.w3.org/TR/CSS21/conform.html#defs )

5.2. ‘icon’ property
______________________

  # Media: all

應該是 visual 吧,看不出來 icon 在語音瀏覽器要怎麼呈現。

  # The <uri> value(s) in this property refer to one or more icons in a
  # comma delimited list.

這個完全可以用 image("uri1", "uri2"),這點 css3-images 的編輯 Tab Atkins
也有提過[1]。

7.5. ‘outline-offset’ property
________________________________

沒有提負值大到 'outline' 圍起來的面積小於零的時候該怎麼辦,測試資料:

data:text/html,<p style="outline: solid; outline-offset: -2em;">Test</p>

在 WebKit 和 Firefox 下不一樣,WebKit 索性不顯示了,Firefox 有點像是反轉
不過有點問題。我建議規範寫「無定義」或是描述 WebKit 的行為。

8.1. ‘resize’ property
________________________

  # The ‘resize’ property applies to elements whose computed
  # ‘overflow’ value is something other than ‘visible’. If
  # ‘overflow’ is different in a particular axis (i.e. ‘overflow-x’
  # vs. ‘overflow-y’), then this property applies to the dimension(s)
  # which do not have the value ‘visible’.

這個目前並不合實作,測試資料(只有 Firefox 有支援非 <textarea> 的
'resize'):

data:text/html,<div style="resize: both; overflow-x: scroll; overflow-y:
visible;">Test<br />Test</div>

這裡與其照規範是 resize: both; 受限於 overflow-y: visible; 而變成
resize: horizotal; ,Firefox 是把 'overflow-y' 的計算值變成 'auto'。我對
於哪種行為比較合理(resize vs. overflow 誰贏?)沒什麼感覺。不過既然
www-style 沒討論過這個,我倒是覺得還不如就寫下 Firefox 的行為。

另一方面,在 FF 的實作裡假如 overflow 兩邊都是 visible 反而是 overflow
贏(resize 變成 none),所以就一致性來講規範也有點道理。

8.2. Overflow Ellipsis: the ‘text-overflow’ property
______________________________________________________

  # Value:  ( clip | ellipsis | <string> ){1,2} | inherit

應該是 [ clip | ellipsis | <string> ]{1,2} | inherit 才對(用中誇號)

  # If there are two values, the first value applies to the left edge,
  # and the second value applies to the right edge.

(這在豎排的時候應該是上下,不過先不提這個了。)

9.1.1. ‘cursor’ property
__________________________

<x> <y> 的部份應該提一下超過圖片大小的情形,測了一下 WebKit 和 Firefox
並沒有兼容問題(IE 不支援 <x> <y>),總之就是超過圖片大小的 <x> <y> 以圖
片大小計。

9.2.1. Sequential navigation order: the ‘nav-index’ property
______________________________________________________________

  # Value:    auto | <number> | inherit

只可能是整數,s/<number>/<integer>/ 。

  # Applies to:    all enabled elements

假如 nav-index 的目的是作為 tabindex 的 CSS 版,先不論這件事本身有沒有價
值,至少適用元素應該跟 tabindex 一樣是所有元素。

  # This property is a replacement for the HTML4/XHTML1 attribute
  # ‘tabindex’ ([HTML401], section 17.11.1). Borrowed and slightly
  # rephrased from the HTML4 Recommendation:

這個模組也不是沒提到 HTML5,在這裡提 HTML4 實在沒什麼道理。

9.2.2. Directional focus navigation: the ‘nav-up’, ‘nav-right’,
‘nav-down’, ‘nav-left’ properties
___________________________________________________________________

  # The <id> value consists of a ‘#’ character followed by an
  # identifier

這邊要說清楚 "identifier" 的語法是什麼,應該是 <identifer> 吧,除非有必
要支援 #auto, #current 和 #root (<identifer> 規定不能是取值欄位裡出現過
的關鍵字),不過至少要說清楚這裡是 CSS2.1 的 IDENT token。

同樣,<target-name> 的語法也不明。而且也沒有例子...

9.2.3. Input method editor: the ‘ime-mode’ property
_____________________________________________________

(之前問的那些問題[2])


這次遲了 19 個小時,不過這個模組到目前為止在 Last Call 之後都還沒有什麼
反饋... 所以應該還是會被接受吧 :p

[1] http://lists.w3.org/Archives/Public/www-style/2011Jul/0202
[2] http://lists.w3.org/Archives/Public/public-html-ig-zh/2012Feb/0036


此致

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

Received on Thursday, 16 February 2012 00:11:03 UTC