2011-11-25 156 views
2

請,我不從standard理解這個段落:HTML5枚舉類型

當屬性指定,如果它的值是給定的關鍵字之一的ASCII 不區分大小寫的匹配,那麼該 關鍵字的狀態是屬性表示的狀態。如果 屬性值與任何給定關鍵字都不匹配,但屬性 的默認值爲無效值,則該屬性表示該狀態爲 。否則,如果該屬性值與任何關鍵字 都不匹配,但是定義了缺失值默認狀態,則表示該屬性表示的狀態爲 。否則,沒有默認設置, 和無效值必須被忽略。

當未指定屬性時,如果缺少值 默認狀態已定義,則表示該狀態是由 (缺失)屬性表示的狀態。否則,缺少屬性意味着 沒有狀態表示。

有關

無效值默認缺失值默認話。

任何人都可以給我一個例子或解釋更好嗎?

謝謝。

+0

[關閉 - 移動至程序員交易所] –

回答

0

這意味着當用戶代理遇到對於給定屬性的無效關鍵字:

  1. 如果在規範中定義的「無效默認」值,則該屬性將被視爲在這樣的狀態。
  2. 如果不是,則沒有爲給定屬性定義狀態。

你是從哪裏看到規範的引用這一段的?如果你把它指向我,我會用它作爲例子。

+0

點擊標準的文字鏈接或去http://www.whatwg.org/specs/web-apps/current-work/multipage /common-microsyntaxes.html#enumerated-attribute – xdevel2000

1

枚舉屬性可以定義爲具有有效值列表:例如,

  • 文本
  • 日期
  • 地址
  • 電話

以及兩個默認

  • 無效默認例如電話
  • 缺失值缺省值:例如文字

然後一個元素foo和上述屬性bar

<foo bar="date"> => valid value, state is `date` 
<foo bar="time"> => invalid value, state is the invalid default `phone` 
<foo>    => missing value, state is the missing value default `text` 

然而有時,屬性並沒有爲它定義一個無效的默認,但它確實有一個缺失值默認定義。在這種情況下:

<foo bar="date"> => valid value, state is `date` 
<foo bar="time"> => invalid value, state is the missing value default `text` 
<foo>    => missing value, state is the missing value default `text` 

有時屬性具有爲它定義一個無效的默認,但它並沒有缺失值默認定義。在這種情況下:

<foo bar="date"> => valid value, state is `date` 
<foo bar="time"> => invalid value, state is the invalid default `phone` 
<foo>    => missing value, attribute has no state 

有時該屬性沒有爲其定義的無效缺省值或缺省值缺省值。在這種情況下:

<foo bar="date"> => valid value, state is `date` 
<foo bar="time"> => invalid value, attribute has no state 
<foo>    => missing value, attribute has no state 
+0

那麼''呢?這有效嗎? –

+0

@TimDown - 對於一個枚舉屬性bar,它的處理方式與上面的bar =「time」相同。 – Alohci

+0

它有效嗎?我無法在HTML5規範中找到明確的答案。 [關於枚舉屬性的部分](http://www.w3.org/TR/html5/infrastructure.html#enumerated-attribute)不明確。 [屬性語法部分](http://www.w3.org/TR/html5/syntax.html#attributes-0)沒有提及對可能沒有任何價值的屬性類型的限制,只是沒有值意味着空字符串。另一方面,[這個MDN頁面](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes#contenteditable)表示枚舉屬性contenteditable需要一個值。 –