2009-03-02 17 views
5

私は現在、IE6とIE7を目指して増分された順序付きリストを作成する方法を理解しようとしています。オーダーリストのリストアイテム内にリストアイテムをネストしていますか?

E.G.これはこのようなものとCSSで作成することが可能です、私が理解から

1.0 
    1.1 
    1.2 
    1.3 
2.0 
    2.1 
    2.2 

:それは以下のようなものをレンダリングする必要があり

UL, OL { counter-reset: item; } 
LI { display: block } 
LI:before { content: counters(item, "."); counter-increment: item } 

しかし、当然のことながら、IE6とIE7をサポートしていません。この。

IE6/7で適切なインクリメントリストを作成するためのオプションはありますか?私はこれをハードコーディングしなければならなかったのですか?残念ながら、JavaScriptを使用することは選択肢ではありません。

最新のブラウザ向けに更新された方法がありますか?

+0

Oところで、書式設定の修正のためにあなたのアンドリューに感謝。 –

答えて

0

javascriptがオプションではない場合(したがって、私はフラッシュも想定していません)、クライアントサイドのソリューションのオプションが不足していると申し訳ありません。 HTMLを生成するサーバー側スクリプトがある場合、注文をサーバーにプッシュして、CSSを使用して箇条書きのない順序付けられていないリストとしてクライアントに出力をスタイルできます。 IE6はここではあなたの制限要因であり、その周りには多くの方法がありません。悪い知らせを抱えて申し訳ありません。

0

JavaScriptがオプションでない場合は、サーバー側でハードコード/実装する必要があります。

肯定的な側面は次のとおりです。これは、他の能力の低いユーザーエージェント/デバイス(BlackBerry Browserなどと思う)ですぐに機能します。

1

XSLT(XSLT 1.0を含む)は、<xsl:number>で複数レベルの番号付けシーケンスを生成できます。ここで

+0

最終的な出力はXHTML 1.0 strictであるため、これは可能性があります。迅速な対応に感謝します。他の提案は、喜んで考慮される以上のものになります。 –

1

はCSSで唯一の解決策(上記IE8で作業しなければならない):

<ol> 
    <li> 
     Heading 
     <ol> 
      <li>list</li> 
      <li>list</li> 
     </ol> 
    </li> 
    <li> 
     Heading 
     <ol> 
      <li>list</li> 
      <li>list</li> 
     </ol> 
    </li> 
</ol> 



ol{ 
    list-style-position:inside; 
    list-style-type: none; 
    counter-reset:mainNum; 
} 

ol li:before{ 
    content: counter(mainNum) ".0"; 
    counter-increment:mainNum; 
} 

ol ol{ 
    counter-reset:item; 
} 

ol ol li{ 
    list-style-type:none 
} 

ol ol li:before{ 
    content: counter(mainNum) "." counter(item) " "; 
    counter-increment:item; 
} 
関連する問題