問題の起源 私がタイトルの番号付けの問題に初めて注目したのは、学部の論文を書いていた頃まで遡ります。当時、このトピックについても別途触れました。Word には、カスケード タイトルと呼ばれる非常に優れた機能があります。一度設定すれば、タイトル スタイルを設定するだけで、設定したタイトル番号付け方法に従ってタイトルに自動的に番号が付けられます。対応するタイトルを対応する基本タイトル スタイルに設定するだけです。私はこの方法が大好きで、長年使用しています。これにより、途中に章やセクションを挿入することによって章番号を手動で調整する問題が完全に解決されます。 もちろん、画像の番号付けと名前付けも同様です。 マークダウンを使い始めるまでは、さまざまなエディタの切り替えにより、良い代替手段がなかったので、数年前にコマンドラインを使用してこれを行うための小さなツール、rawbin-/markdown-clearを作成しました。このツールは、GitHubでブログを書く問題を解決し、同時にさまざまなプラットフォームに投稿する問題を解決しました。数字はスクリプトで書かれているので、ここでマークダウンを使用してさまざまなプラットフォームに投稿し、HTMLに変換するのは自然であり、この段階での問題も解決します。 まず問題を解決する 以下の操作事例はすべてmacOSで作成されています。他のプラットフォームでは若干の違いがあるかもしれませんが、内容は同じです。
開いているディレクトリのbase.user.cssに次のコードを追加します。 #ライター{ カウンターリセット:h1 } h1 { カウンターリセット:h2 } h2 { カウンターリセット: h3 } h3 { カウンターリセット:h4 } h4 { カウンターリセット: h5 } h5 { カウンターリセット: h6 } #ライター h1:before { カウンター増分: h1; コンテンツ: counter(h1) "." } #ライター h2:before { カウンター増分: h2; コンテンツ: counter(h1) "." counter(h2) ". " } #ライター h3:before { カウンター増分: h3; コンテンツ: counter(h1) "." counter(h2) "." counter(h3) ". " } #ライター h4:before { カウンター増分: h4; コンテンツ: counter(h1) "." counter(h2) "." counter(h3) "." counter(h4) ". " } #ライター h5:before { カウンター増分: h5; コンテンツ: counter(h1) "." counter(h2) "." counter(h3) "." counter(h4) "." counter(h5) ". " } #ライター h6:before{ カウンター増分: h6; コンテンツ: counter(h1) "." counter(h2) "." counter(h3) "." counter(h4) "." counter(h5) "." counter(h6) ". " } 合理的
Github ページで自動的に番号付けされたマークダウン ブログを書く 私はjekyllbootstrap.comのテンプレートを使用していますが、これは比較的シンプルです rawbin-.github.io 内の任意の記事を開き、[右クリック] => [検査]
ソースコード内のassets/themes/bootstrap3/css/style.cssの以下の内容を変更します。 。コンテンツ { カウンターリセット:h1 } h1 { カウンターリセット:h2 } h2 { カウンターリセット: h3 } h3 { カウンターリセット:h4 } h4 { カウンターリセット: h5 } h5 { カウンターリセット: h6 } .content h1:before { カウンター増分: h1; コンテンツ: counter(h1) "." } .content h2:before { カウンター増分: h2; コンテンツ: counter(h1) "." counter(h2) ". " } .content h3:before { カウンター増分: h3; コンテンツ: counter(h1) "." counter(h2) "." counter(h3) ". " } .content h4:before { カウンター増分: h4; コンテンツ: counter(h1) "." counter(h2) "." counter(h3) "." counter(h4) ". " } .content h5:before { カウンター増分: h5; コンテンツ: counter(h1) "." counter(h2) "." counter(h3) "." counter(h4) "." counter(h5) ". " } .content h6:before{ カウンター増分: h6; コンテンツ: counter(h1) "." counter(h2) "." counter(h3) "." counter(h4) "." counter(h5) "." counter(h6) ". " } 他のウェブエディタでの自動コーディング 例えば、私たちが文書を書くときによく使うYuqueのような、さまざまなブログプラットフォーム、さまざまなセルフメディアプラットフォームなどが使えます。 ここで言うマークダウンとは、ページのリッチテキストエディタでマークダウンをWebページに自動変換できるブラウザプラグインのことです。これは、先ほども述べたように近年さまざまなプラットフォームに投稿するためのルーチンでもあります。番号とタイトルを付けたマークダウンを書いてエディタに貼り付け、クリックするだけで完了です。 単純な試み
.markdown-here-wrapper { カウンターリセット:h1 } .markdown-here-wrapper h1 { カウンターリセット:h2 } .markdown-here-wrapper h2 { カウンターリセット: h3 } .markdown-here-wrapper h3 { カウンターリセット:h4 } .markdown-here-wrapper h4 { カウンターリセット: h5 } .markdown-here-wrapper h5 { カウンターリセット: h6 } .markdown-here-wrapper h1:before { カウンター増分: h1; コンテンツ: counter(h1) "." } .markdown-here-wrapper h2:before { カウンター増分: h2; コンテンツ: counter(h1) "." counter(h2) ". " } .markdown-here-wrapper h3:before { カウンター増分: h3; コンテンツ: counter(h1) "." counter(h2) "." counter(h3) ". " } .markdown-here-wrapper h4:before { カウンター増分: h4; コンテンツ: counter(h1) "." counter(h2) "." counter(h3) "." counter(h4) ". " } .markdown-here-wrapper h5:before { カウンター増分: h5; コンテンツ: counter(h1) "." counter(h2) "." counter(h3) "." counter(h4) "." counter(h5) ". " } .markdown-here-wrapper h6:before{ カウンター増分: h6; コンテンツ: counter(h1) "." counter(h2) "." counter(h3) "." counter(h4) "." counter(h5) "." counter(h6) ". " }
最終出力とアプリケーション
.markdown-here-wrapper { カウンターリセット: h1; h1 { カウンターリセット: h2; &:前に { カウンター増分: h1; コンテンツ: counter(h1) ". "; } } h2 { カウンターリセット: h3; &:前に { カウンター増分: h2; コンテンツ: counter(h1) "." counter(h2) ". " } } h3 { カウンターリセット: h4; &:前に { カウンター増分: h3; コンテンツ: counter(h1) "." counter(h2) "." counter(h3) ". " } } h4 { カウンターリセット: h5; &:前に { カウンター増分: h4; コンテンツ: counter(h1) "." counter(h2) "." counter(h3) "." counter(h4) ". " } } h5 { カウンターリセット: h6; &:前に { カウンター増分: h5; コンテンツ: counter(h1) "." counter(h2) "." counter(h3) "." counter(h4) "." counter(h5) ". " } } h6:前{ カウンター増分: h6; コンテンツ: counter(h1) "." counter(h2) "." counter(h3) "." counter(h4) "." counter(h5) "." counter(h6) ". " } } 原理を簡単に説明しましょう CSS 自動番号付け これは新しい機能ではなく、CSS 2.1 で登場した古い機能です。site:w3.org css automatic numbering で検索すると見つかります。もちろん、現在ではそれ以降のバージョン (CSS 3、CSS 2.2) にもこの機能はあります。caniuse から見ると、IE8 以上に対応していることがわかります。すごいと思いませんか? 簡単な説明
Chromeプラグインまたは拡張機能の開発 実際にやったことはないのですが、それに関する本を読みました。 参考資料
まだ解決されていない問題がいくつかある
ちなみに、CSSの他の変数の内容を調べてみましょう CSS変数またはカスタムプロパティ このIEは互換性がありません。他のブラウザはより高いバージョンと互換性があります。 :根{ --var-test:xxx } 。体{ --var-test:ooo; をテストします。 プロパティテスト:var(--var-test) } 属性()
純粋な CSS ソリューションは終了したようです。
純粋な CSS でマークダウン自動番号付けを実装するサンプルコードに関するこの記事はこれで終わりです。CSS マークダウン自動番号付けに関するより関連性の高いコンテンツについては、123WORDPRESS.COM の過去の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 |
<<: MySQL では SQL ステートメントはどのように実行されますか?
>>: node.js で PC 上の WeChat アプレット パッケージを復号化するための処理アイデア
目次1. デップ2. 観察者を理解する3. 監視と観察者を理解する4. トリガーの依存性5. プロセ...
テクノロジーの活用itext.jar: バイト ファイル入力ストリームを画像、PDF などに変換しま...
以下は、Flex レイアウトを使用した棒グラフです。 HTML: <div class=&qu...
1. 遭遇したいくつかの問題2008 年にパフォーマンス テストを行っていたとき、パフォーマンス テ...
方法 1: スクリプト方式を使用する:共通ヘッダー ファイル head.js または共通フッター フ...
張新旭氏の記事を引用して皆さんにシェアしたいと思います。 変更を加えたい場合は、対応する画像によって...
目次物体オブジェクト定義オブジェクトのメンバーを反復処理するJS組み込みオブジェクト数学オブジェクト...
1. 縦型テーブルと横型テーブル垂直テーブル: テーブル内のフィールドとフィールド値はキーと値の形式...
Centos7 の yum ソースには、mysql の代わりに mariaDB が使用されているため...
リンクに rel="nofollow" 属性を追加すると、検索エンジンにこの接続...
目次背景コモンズチャンクプラグイン分割チャンク構成リソースを非同期に読み込む要約する背景高性能なアプ...
この記事では、Centos7.3でのmysql5.7.18のインストールと初期パスワードの変更につい...
目次説明する成し遂げるプロジェクトのディレクトリ構造は次のとおりです。効果図は以下のとおりです要約す...
この記事では、例を使用して、MySQL で複数のトリガー操作を作成する方法について説明します。ご参考...
Google の Flutter の目標は、どのプラットフォームを使用していても、ネイティブの速度...