実現したいこと
cssのカウンター機能を使って、特定の要素の出現ごとに擬似要素の数値を1ずつ増やしたい。
発生している問題・分からないこと
「container-type: inline-size;」をカウントしたい要素の親要素に指定するとmacのsafari(バージョン17.6)でカウンターの数が増えず、00になってしまう。macのchrome(バージョン131.0.6778.86)では大丈夫でした。「container-type: inline-size;」の記述を残しつつsafariでカウンターを使いたい。
該当のソースコード
html
1<!DOCTYPE html> 2<html lang="ja"> 3 4<head> 5 <meta charset="UTF-8"> 6 <meta name="viewport" content="width=device-width, initial-scale=1.0"> 7 <title>テスト</title> 8 <style> 9 .point_wrap { 10 counter-reset: point; 11 } 12 13 .point { 14 counter-increment: point; 15 } 16 17 .point_title1::after { 18 content: counter(point, decimal-leading-zero); 19 } 20 21 .point_inner { 22 container-type: inline-size; 23 } 24 </style> 25</head> 26 27<body> 28 29 30 <div class="point_wrap"> 31 32 33 34 <section class="point"> 35 <div class="point_inner"> 36 <h2 class="point_title1">POINT</h2> 37 </div> 38 </section> 39 40 41 42 <section class="point"> 43 <div class="point_inner"> 44 <h2 class="point_title1">POINT</h2> 45 </div> 46 </section> 47 48 49 50 <section class="point"> 51 <div class="point_inner"> 52 <h2 class="point_title1">POINT</h2> 53 </div> 54 </section> 55 56 57 58 </div><!--/.point_wrap--> 59 60 61 62</body> 63 64</html>
試したこと・調べたこと
- teratailやGoogle等で検索した
- ソースコードを自分なりに変更した
- 知人に聞いた
- その他
上記の詳細・結果
日本語で検索しても同ケースが出てこないので英語でもgoogleで検索。htmlやcssをの一部の記述をコメントアウトしたり削除することにより簡素化して再現性をチェック。その結果「container-type: inline-size;」の有無が関係しているようだった。
補足
検証ツールで「container-type: inline-size;」をつけ外ししても、safariの数字は00のままだが、元のソースコードから「container-type: inline-size;」を消してsafariをリロードするとカウンターが機能する。
あなたの回答
tips
プレビュー