Ameba Ownd

アプリで簡単、無料ホームページ作成

コードブロックの行頭に擬似的に行番号を付ける(Ownd非対応)

2019.05.03 02:00

プログラミング技術系のブログを書いている方はブログ記事中にソースコードを紹介したい時が多々あると思います。HTMLの文法ではソースコードを紹介したい時はコードブロックタグ(<pre><code>〜</code></pre>)で囲むこととされていますが、Ameba Owndのブログ記事編集画面ではそもそもコードブロックタグを入力することができません。そこで以前に順序付きリストをコードブロックに見せかける方法を紹介しました。

本記事では、他のブログサービスを使っている方向けに、CSSカスタマイズによってコードブロックの行頭に擬似的に行番号を付ける方法をご紹介します。SaKuRaiさん https://www.studiomic.net/pre-line-numbers/ の解説を参考にしました。

想定するHTML

  1. <pre>
  2. :before
  3. <code>
  4. ソースコード1行目
  5. ソースコード2行目
  6. ソースコード3行目
  7. </code>
  8. </pre>

考え方

CSSサンプル

  1. pre *{font-size:14px; line-height:1.8;} 
  2. pre {padding:0; overflow-y:hidden; overflow-x:scroll;} 
  3. pre {position:relative} 
  4. pre>code:before {position:absolute; top:0px; left:0px;} 
  5. pre>code:before {width:32px; display:block; text-align:right; padding-top:10px; content:"1\A 2\A 3\A 4\A 5\A 6\A 7\A 8\A 9\A 10\A 11\A 12\A 13\A 14\A 15\A 16\A 17\A 18\A 19\A 20\A 21\A 22\A 23\A 24\A 25\A 26\A 27\A 28\A 29\A 30\A 31\A 32\A 33\A 34\A 35\A 36\A 37\A 38\A 39\A 40\A 41\A 42\A 43\A 44\A 45\A 46\A 47\A 48\A 49\A 50\A";}
  6. pre>code {white-space:pre;}
  7. pre>code {padding-left:32px; margin:10px 10px 10px 10px;} 

備考

Ameba Owndでは使えないテクニックですが、WordPressなどの他のブログサービスを使っている方はぜひ参考にしてください。(森山)