質問

できるかを定義するクラスの名前項の規定をMarkdown?どうすれば良いですか。

役に立ちましたか?

解決

デュープ:私は、HTMLのクラスを設定するにはどうすればよいですマークダウン内の属性ですか

<時間>

ネイティブ?いいえ。しかし...

いいえ、値下げの構文はできません。あなたはを設定rel="noreferrer">することができます。

あなたはあなたが好きな場合は、通常のHTML を使用して、属性を追加することができます markdown="1" のHTML要素内にマークダウンコンバートを継続します。しかしこれは値下げエクストラに必要です。

<p class='specialParagraph' markdown='1'>
**Another paragraph** which allows *Markdown* within it.
</p>

解決策:(未テストと<blockquote>ためのもの)

私は、次のオンラインを見つけます:

の機能

function _DoBlockQuotes_callback($matches) {

    ...cut...

    //add id and class details...
    $id = $class = '';
    if(preg_match_all('/\{(?:([#.][-_:a-zA-Z0-9 ]+)+)\}/',$bq,$matches)) {
        foreach ($matches[1] as $match) {
            if($match[0]=='#') $type = 'id';
            else $type = 'class';
            ${$type} = ' '.$type.'="'.trim($match,'.# ').'"';
        }
        foreach ($matches[0] as $match) {
            $bq = str_replace($match,'',$bq);
        }
    }

    return _HashBlock(
        "<blockquote{$id}{$class}>\n$bq\n</blockquote>"
    ) . "\n\n";
}

の値下げ

>{.className}{#id}This is the blockquote

の結果

<blockquote id="id" class="className">
    <p>This is the blockquote</p>
</blockquote>

他のヒント

生のHTMLはマークダウンで、実際には完全に有効です。たとえばます:

Normal *markdown* paragraph.

<p class="myclass">This paragraph has a class "myclass"</p>

ただ、HTMLのコードブロック内にないことを確認します。

値下げ すべ この能力が、ださい。その代わり、また言語別の値下げsupersets:

PHP: 値下げに追加
Ruby Kramdown, Maruku

ものが必要な場合を遵守する真の値下げ構文だっraw HTMLを挿入するには理想的です。

場合はお客様の環境ではJavaScriptを使用 markdownで のプラグイン markdownでattrs:

const md = require('markdown-it')();
const attrs = require('markdown-it-attrs');
md.use(attrs);

const src = 'paragraph {.className #id and=attributes}';

// render
let res = md.render(src);
console.log(res);

出力

<p class="className" id="id" and="attributes">paragraph</p>

jsfiddle

注意: を意識する企業様の規模に合わせて選択が可能属性に値下げ!

免責事項私の著書であるmarkdownでattrs.

ここでYarinの答え@以下kramdownための作業例です。

A simple paragraph with a class attribute.
{:.yourClass}

参考: https://kramdown.gettalong.org/syntax.html#インライン属性リスト

値下げのあなたの香りがkramdownされている場合、あなたはこのようなCSSクラスを設定することができます:

{:.nameofclass}
paragraph is here

そして、あなたの中にファイルをCSS、あなたはこのようにCSSを設定します:

.nameofclass{
   color: #000;
  }

値下げ上述したように、それ自体は、あなたがこれにぶら下がったまま。ただし、実装によっては、いくつかの回避策があります:

MDの少なくとも一つのバージョンが<div>は、ブロックレベルのタグであると考えるが、単なるテキストは<DIV>です。すべてのbroswersは、しかし、大文字と小文字を区別しません。これは、あなたはdivのコンテナタグを追加するコストで、MDの構文シンプルさを維持することができます。

そこで、以下では、回避策です。

<DIV class=foo>

  Paragraphs here inherit class foo from above.

</div>

これの欠点は、出力コードが<p>ラインを包む<div>タグ(それらの両方、最初のを持っているということです、それは一致していないので、それはないと第二ので。何ブラウザは、私が見つけたその本についてfussesませんしかし、コードが検証されません。MDはとにかくスペア<p>タグに置く傾向がある。

値下げのいくつかのバージョンがMDがタグ内に通常の処理を行います。その場合にはコンベンション<tag markdown="1">を実装します。上記の例は次のようになる。

<div markdown="1" class=foo>

  Paragraphs here inherit class foo from above.

</div>

フレッチャーの現在のバージョンののMultiMarkdown のは、参照リンクを使用している場合、属性は、リンクをたどることができます。

スリムな値下げで、この:

markdown:
  {:.cool-heading}
  #Some Title

に変換します:

<h1 class="cool-heading">Some Title</h1>

(私が行ったように)あなただけのJavascriptの目的のためにセレクタが必要な場合は、あなただけの代わりにhrefまたはclassid属性を使用したい場合があります:

ただ、この操作を行います。

<a href="#foo">Link</a>

値下げを無視したり、それがないようにクラスやIDを持つhref属性を削除しません。

あなたが行うことができますあなたのJavascriptやjQueryの中のSOます:

$('a[href$="foo"]').click(function(event) {

    ... do your thing ...

    event.preventDefault();
});

少なくとも、これは値下げの私のバージョンで動作します...

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top