お世話になります。
olを使用したリストの入れ子で、1-1、1-2などの番号を
振る方法はないでしょうか。
例で言いますと、
<ol>
<li>A
<ol>
<li>AA</li>
<li>AB</li>
</ol>
</li>
</ol>
…等とすると、
1.A
1-1.AA
1-2.AB
のように表示させたいのですが、このように、
入れ子の数に対して、「1-3-1」とか『2-A-1-1』などの
番号を振る方法とは、ありますでしょうか。
もしあるのであればご教授ください。
よろしくお願いいたします。
No.2
- 回答日時:
olにはわざわざ番号を振ることはないですが、h1~h6には階層の番号を振りますね。
第1節第2章2項 とか。
[Element]:beforeセレクタ
とcontent:(内容の追加プロパティ)
と、counterを使います。
⇒4.3.5 カウンタ(Counters)( http://www.swlab.it.okayama-u.ac.jp/man/rec-css2 … )
⇒12.5 カウンタと自動番号振り(Automatic counters and numbering)( http://www.swlab.it.okayama-u.ac.jp/man/rec-css2 … )
⇒12.5.1 カウンタの入れ子と作用範囲(Nested counters and scope)( http://www.swlab.it.okayama-u.ac.jp/man/rec-css2 … )
が資料になります。
ポイントは、カウンターリセットは、カウントする自身では出来ないので、
<ol>
<li> ol liでサブ項目のカウントをリセットする。
<ol>
<li></li> ol li ol li でカウントする。
<li></li>
</ol>
</li>
ようにすれば良いでしょう。
/*見出しのナンバリング */
body ol {
counter-reset: chapter; /* あらかじめリセットしておく必要がある */
}
body ol ol{
counter-reset: section; /*ol li ol li:before ではなく ここでリセットしなければならない */
}
body ol ol ol{
counter-reset: sub_section; /* ol ol ol li:before ではなく h2 でリセットしなければならない */
}
body ol li:before {
content: counter(chapter) "-";
counter-increment: chapter 1;
}
body ol li ol li:before {
content: counter(chapter) "-" counter(section) "-";
counter-increment: section 1;
}
body ol li ol li ol li:before {
content: counter(chapter) "-" counter(section) "-"counter(sub_section) "-";
counter-increment: sub_section 1;
}
とか・・テストしてません。
早速のご返答、ありがとうございました。
ブラウザ依存ということで、今回は使用を
見送りましたが、参考にさせていただきました。
ありがとうございました。
No.1ベストアンサー
- 回答日時:
最近のブラウザであればこんな書き方ができるようです
<style>
ol {counter-reset:item;}
ol >li{list-style:none;}
ol >li:before {
content : counters(item, '-') '. ';
counter-increment : item;
}
</style>
<ol>
<li>A
<ol>
<li>AA
<ol>
<li>AAA</li>
<li>AAB</li>
</ol>
</li>
<li>AB
<ol>
<li>ABA</li>
<li>ABB</li>
</ol>
</li>
<li>AC</li>
</ol>
</li>
</ol>
>『2-A-1-1』など
どのようなロジックで「A」が出現するか確定できないので難しいと思います。
実際IEとかでは難しいかもしれないので、運用は難しいですね
真剣にやるならjavascriptなどでやることになるかもしれません
早速のご返答、ありがとうございました。
cssでできるというのは解ったのですが、
ブラウザに依存するというのではやはり
思ったようにはできなそうです。
タグのみでできるのが理想だったのですが、
残念です。
ここでいうことではないかもしれませんが、
cssでなく、タグで標準機脳としてもあって
よいような気もします。
ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- HTML・CSS リストの並べ替え 1 2022/09/13 15:27
- JavaScript html5に変えるとスライドショーが消えてしまった。 3 2022/03/26 19:53
- その他(動画サービス) 丸の内OLレイナの有料会員の解約方法、知っている方教えてください。 (サイトにはメアドは書いてあるの 1 2022/09/01 15:19
- Java Java 南京錠 2 2023/02/04 11:46
- PHP コメント機能に返信欄を矢印で追加したい 1 2022/05/09 21:17
- Perl RSSにdiv,ul classを付けたいのですがどのようにつけるのかわからないです 2 2022/03/28 01:53
- HTML・CSS アコーディオンメニューが思うように動作しません。 1 2023/08/20 16:48
- HTML・CSS display flex の使い方 1 2022/04/25 19:13
- PHP style.cssのjQuery条件付きcssが機能しない 4 2022/07/17 18:27
- 物理学 下図のグラフについてですが、①グラフの面積がコイルのエネルギーを表すことからおそらく縦軸はコイルでの 2 2023/07/22 17:57
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
<table>の高さ固定。情報増加時...
-
「・」(黒い点)を非表示にした...
-
リストマーカーをボックス内に...
-
liタグの中に<p>タグやら<dl>を...
-
display:table;を多段表示させたい
-
画像横のテキストをセンターに...
-
ol要素の番号とリスト項目の離...
-
HTMLで組織図を作成する方法
-
<ul><li></li></ul>にするメリ...
-
リストを2つに分割して、それぞ...
-
<ul>と<li>リストマークを消す...
-
親ページ側からインラインフレ...
-
html <li>の中の文字一部に色を...
-
HTMLで画像を3つ並べる方法
-
複数行にまたがる括弧を表示し...
-
レスポンシブWebデザインでリン...
-
ulとliで囲った文字の一部を変...
-
<ul>~</ul>が二つ続くと間に改...
-
番号付きリスト(<Ol><Li>・・...
-
横並びのボタンの背景を片方だ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
リストマーカーをボックス内に...
-
番号付きリスト(<Ol><Li>・・...
-
liタグの中に<p>タグやら<dl>を...
-
レスポンシブWebデザインでリン...
-
<table>の高さ固定。情報増加時...
-
<ul><li></li></ul>にするメリ...
-
リストの数字のフォントサイズ...
-
HTMLで組織図を作成する方法
-
ulタグやliタグの中でbrタグ...
-
divタグ内のコンテンツが重なっ...
-
画像にリンクを張ると画像がず...
-
複数行にまたがる括弧を表示し...
-
ページを開いているときのリン...
-
html <ul></ul>の並びで一行空...
-
html/cssの、navを2段にする...
-
HTML5のfooterに見出しを付けて...
-
<ul>~</ul>が二つ続くと間に改...
-
htmlの<ol>タグで、数字などを...
-
リンク文字同士の間隔を開ける...
-
CSSでつくったメニューのアニメ...
おすすめ情報