2016-09-05 4 views
3

CSSカウンタを使用して通常の方法で見出しにセクション番号を追加すると、headerタグを使用するときに問題が発生します。ヘッダータグがCSSカウンタの見出しと干渉する

何とかcounter(S)と干渉しているようだ

body { 
 
    counter-reset: h1 
 
} 
 
h1 { 
 
    counter-reset: h2 
 
} 
 
h2 { 
 
    counter-reset: h3 
 
} 
 
h1:before { 
 
    counter-increment: h1; 
 
    content: counter(h1)". " 
 
} 
 
h2:before { 
 
    counter-increment: h2; 
 
    content: counter(h1)"." counter(h2)". " 
 
} 
 
h3:before { 
 
    counter-increment: h3; 
 
    content: counter(h1)"."counter(h2)"." counter(h3)". " 
 
}
<!DOCTYPE HTML> 
 
<html> 
 

 
<head> 
 
    <title>Headings counting</title> 
 

 
</head> 
 

 
<body> 
 
    <header> 
 
    <h1>First chapter</h1> 
 
    </header> 
 
    <h2>Sub Chapter</h2> 
 
    <h2>Sub Chapter</h2> 
 
    <h2>Sub Chapter</h2> 
 
    <h3>Sub sub section</h3> 
 
</body> 
 

 
</html>

出力は次のとおりです。

  • 第一章
  • 1.1。副章
  • 1.1。副章
  • 1.1。副章
  • 1.0.1。

      1. 第一章
    • 1.1:headerタグoutput is as expectedを除去した後、サブサブセクション

    。副章

  • 1.2。サブチャプター
  • 1.3。副章
  • 1.3.1。サブサブセクション

H1を中心にheaderタグを使用すると、この結果になるかどうかを確認してください。それは単にあなたがheaderタグの有無にかかわらずh1を持ってしようとしているかによって、counter-reseth1で宣言ルールにheaderを追加/置き換え

答えて

2

Firefoxの&エッジではなく、クロム&オペラにそうします。

body { 
 
    counter-reset: h1 
 
} 
 

 
header { /* add h1 if you going to use h1 without header tag */ 
 
    counter-reset: h2 
 
} 
 
h2 { 
 
    counter-reset: h3 
 
} 
 
h1:before { 
 
    counter-increment: h1; 
 
    content: counter(h1)". " 
 
} 
 
h2:before { 
 
    counter-increment: h2; 
 
    content: counter(h1)"." counter(h2)". " 
 
} 
 
h3:before { 
 
    counter-increment: h3; 
 
    content: counter(h1)"."counter(h2)"." counter(h3)". " 
 
}
<header> 
 
    <h1>First chapter</h1> 
 
</header> 
 
<h2>Sub Chapter</h2> 
 
<h2>Sub Chapter</h2> 
 
<h2>Sub Chapter</h2> 
 
<h3>Sub sub section</h3>

+0

ありがとうございます!それが私の問題を解決する。 しかし、適切なブラウザの動作は何ですか? – ingo

関連する問題