* li 要素型 (HTML, XHTML 1) [3] [DFN[[CODE(HTMLe)[li]] 要素]]は、[[並び]]の項目を表します。 仕様書: [HTML 4] [4] :[[開始タグ]]:必須 :[[終了タグ]] (HTML 4):省略可能 :終了タグ (XHTML 1):必須 :[[内容模型]] (HTML 4 の [CODE(HTMLe)[ul]], [CODE(HTMLe)[ol]]):[CODE(SGML)[(%[[flow]];)*]] :[[内容模型]] (HTML 4 の [CODE(HTMLe)[dir]], [CODE(HTMLe)[menu]]):[CODE(SGML)[(%[[inline]];)*]] :出現できる文脈:[CODE(HTMLe)[[[ol]]]], [CODE(HTMLe)[[[ul]]]], [CODE(HTMLe)[[[dir]]]], [CODE(HTMLe)[[[menu]]]] の直下 :[[属性]]: ,[CODE(HTMLa)[[[class]]]] , , ,[[級]] ,[HTML4] %[[coreattr]] ,[CODE(HTMLa)[[[dir]]]] , , ,[[書字方向]] ,[HTML4] %[[i18n]] ,[CODE(HTMLa)[[[id]]]] , , ,一意識別子 ,[HTML4] %coreattr ,[CODE(HTMLa)[[[lang]]]] , , ,[[自然言語]] ,[HTML4] %i18n ,[CODE(HTMLa)[[[xml]]:lang]] , , ,自然言語 ,[XHTML1] ,[CODE(HTMLa)[[[onclick]]]] , , , ,[HTML4] %[[events]] ,[CODE(HTMLa)[[[ondblclick]]]] , , , ,[HTML4] %events ,[CODE(HTMLa)[[[onkeydown]]]] , , , ,[HTML4] %events ,[CODE(HTMLa)[[[onkeypress]]]] , , , ,[HTML4] %events ,[CODE(HTMLa)[[[onkeyup]]]] , , , ,[HTML4] %events ,[CODE(HTMLa)[[[onmousedown]]]] , , , ,[HTML4] %events ,[CODE(HTMLa)[[[onmousemove]]]] , , , ,[HTML4] %events ,[CODE(HTMLa)[[[onmouseout]]]] , , , ,[HTML4] %events ,[CODE(HTMLa)[[[onmouseover]]]] , , , ,[HTML4] %events ,[CODE(HTMLa)[[[onmouseup]]]] , , , ,[HTML4] %events ,[CODE(HTMLa)[[[style]]]] , , ,スタイル情報 ,[HTML4] %coreattr ,[CODE(HTMLa)[[[title]]]] , , ,注釈的題 ,[HTML4] %coreattr ,[CODE(HTMLa)[[[type]]]] ,"[CODE(ABNF)[\"disc\" / \"square\" / \"circle\" / '1' / 'a' / 'A' / 'i' / 'I']]" , ,項目番号の種類 ,[HTML4] 非推奨 ,[CODE(HTMLa)[[[value]]]] ,[CODE(SGML)[[[NUMBER]]]] ,[CODE[1]] ,項目の番号 ,[HTML4] 非推奨 [[#comment]] ** レンダリング [5] [cODE(HTMLe)[[[ul]]]], [CODE(HTMLe)[[[ol]]]], [CODE(HTMLe)[[[dir]]]], [CODE(HTMLe)[[[menu]]]], [CODE(HTMLa)[[[type]]]], [CODE(HTMLa)[[[value]]]], [CODE(HTMLa)[[[compact]]]], [CODE(HTMLa)[[[src]]]], [CODE(CSS)[[[list-style]]]] などのレンダリングの説明も参照。 [[#comment]] ** 実装について [6] ブラウザによっては、並び系要素の直下にない [CODE(HTMLe)[li]] 要素にも list marker を表示してくれる親切なものもあるので、 並び系要素を省略できると思っている人や、裏技(藁)として紹介している解説本もありました (今もそういう人いるの?)。 もっとも、 [[SGML]] 的には、[[開始タグ]]を省略できる変わった版の HTML とみなして処理できることもあるかもしれませんが... [[#comment]] ** メモ [1] ''Testing mcom additions to HTML'' を元に推測すると、 Classic Mozilla では、 [PRE[ ]PRE] は [PRE[ 27. number 27 28. number 28 ]PRE] と表示されていたはずだ。ところが [[Mozilla]] 1.3b ではこれを [PRE[ 27. number 27 ・ number 28 ]PRE] と表示する。 [[WinIE]] 6.0 は [PRE[ ・ number 27 ・ number 28 ]PRE] だ。マイナーに終わった独自拡張が受け継がれなかった一例か。 - [2] [[Google]] の検索結果の要約では、 [CODE(CSS)[[li {display: inline} li + li:before {content: ", "}]] 的な結果 (つまり、読点で項目を結合した文字列) がでてきます。 [3] - [4] [[HTML4]] によれば [CODE(HTMLa)[[[start]]]] や [CODE(HTMLa)[[[value]]]] は [CODE(SGML)[[[NUMBER]]]] らしいので、零以上の整数しか表せませんが、実装、たとえば [[Gecko]] は負整数にも対応しています。 (正符号は?) - [5] Gecko は値を31ビット分 (2147483647) までしか扱えなくて、それ以上だと零や負数になってしまいます。 (多分上限は環境によって異なるでしょう。符号付き長整数が32ビットならこういう結果なのだと思われ。) [[WinIE]] 6 も同じところが限界でした。 - [6] ''Lists CHECK!'' : >>4-5 テスト頁。 [7] >>1 の頁を NC 48 で見てみたのですが、全部 [CODE[disc]] で表示されました。よくみたら、 [CODE(HTMLe)[ol]] ではなく [CODE(HTMLe)[ul]] ではないですか。 ということで [CODE(HTMLe)[ol]] になおして表示したら、[Q[27.]], [Q[28.]], [Q[・]], [Q[・]] になりました。よくみたら羅馬数字は [CODE(HTML)[I]] でなく [CODE(HTML)[R]] になっていますね。 Dan が試した当時の Navigator がどう表示していたのか確かめてみる必要がありそうです。それに限らず、現代の各 UA のこの辺の実装も調べてみたら面白そうです。 ([[名無しさん]] [WEAK[2004-04-14 03:37:58 +00:00]]) [8] [CITE[The
  • element's feedback]] ([[Ian Hickson ]] 著, [TIME[2008-04-23 06:56:09 +09:00]] 版) ([[名無しさん]]) [[#comment]] * メモ