Não conheço uma maneira mais precisa de perguntar "Posso definir um nome de classe no parágrafo usando o Markdown?" Você esqueceu de ler o título?
21919 Ryan Florence
[Tendencioso] Se você é um usuário de Nó, consulte Rho . Embora não seja 100% compatível com o Markdown, você ainda pode achar muito atraente, pois possui o recurso necessário em seu núcleo.
(Testado com o analisador MaRuKu), você pode usar apenas "{.class-name}" no início de uma linha de texto para efetuar a tag P. A parte da identificação é ignorada no entanto.
21713 David Hutchison
75
HTML bruto é realmente perfeitamente válido na remarcação. Por exemplo:
Normal*markdown* paragraph.<p class="myclass">This paragraph has a class"myclass"</p>
Apenas verifique se o HTML não está dentro de um bloco de código.
Eu não tinha ideia disso. Funciona muito bem com o Markdown Preview (Sublime 3) que usa o PythonMarkdownanalisador interno .
217 Mihai
3
Como mencionado acima, a própria remarcação deixa você pendurado nisso. No entanto, dependendo da implementação, existem algumas soluções alternativas:
Pelo menos uma versão do MD considera <div>uma tag de nível de bloco, mas <DIV>é apenas texto. Todos os irmãos, no entanto, não diferenciam maiúsculas de minúsculas. Isso permite manter a simplicidade da sintaxe do MD, ao custo de adicionar tags de contêineres div.
Portanto, o seguinte é uma solução alternativa:
<DIVclass=foo>
Paragraphs here inherit class foo from above.
</div>
A desvantagem disso é que o código de saída possui <p>tags que envolvem as <div>linhas (as duas, a primeira porque não é e a segunda porque não corresponde. Nenhum navegador se preocupa com isso que eu encontrei, mas o código ganhou ' O MD tende a colocar <p>tags sobressalentes de qualquer maneira.
Várias versões do markdown implementam a convenção; <tag markdown="1">nesse caso, o MD fará o processamento normal dentro da tag. O exemplo acima se torna:
<divmarkdown="1"class=foo>
Paragraphs here inherit class foo from above.
</div>
A versão atual do MultiMarkdown do Fletcher permite que os atributos sigam o link se estiverem usando links referenciados.
Nota: Certifique-se de usar marcadores de código; a maior parte deste post foi oculta, pois foi interpretada como tags HTML.
Lawrence Dol
Obrigado - o DIV hack é a única resposta aqui que parece funcionar com pegdown / cegdown. (Pegdown também é extensível com plugins, então eu poderia fazer isso a longo prazo)
Também deve ser mencionado que as <span>tags permitem dentro deles - itens em nível de bloco negam o MD nativamente dentro deles, a menos que você os configure para não fazê-lo, mas os estilos em linha permitem o MD nativamente dentro deles. Como tal, costumo fazer algo parecido com ...
Thisis a superfluous paragraph thing.<span class="class-red">And thus I delve intomy topic,Lorem ipsum lollipop bubblegum.</span>And thus with that I conclude.
Não tenho 100% de certeza se isso é universal, mas parece ser o caso em todos os editores de MD que usei.
Respostas:
Dupe: Como defino um atributo de classe HTML no Markdown?
Nativamente? Não mas...
Não, a sintaxe do Markdown não pode. Você pode definir valores de ID com o Markdown Extra até.
Você pode usar HTML comum, se quiser, e adicionar o atributo
markdown="1"
para continuar a conversão de markdown no elemento HTML. Isso requer o Markdown Extra .Solução possível: (Não testado e destinado a
<blockquote>
)Encontrei o seguinte online:
Função
Markdown
Resultado
fonte
HTML bruto é realmente perfeitamente válido na remarcação. Por exemplo:
Apenas verifique se o HTML não está dentro de um bloco de código.
fonte
Se seu ambiente for JavaScript, use markdown-it junto com o plug - in markdown-it-attrs :
Resultado
jsfiddle
Nota: Esteja ciente do aspecto de segurança ao permitir atributos em sua redução!
Disclaimer, eu sou o autor de markdown-it-attrs.
fonte
O Markdown deve ter esse recurso, mas não. Em vez disso, você está preso aos superconjuntos Markdown específicos do idioma:
PHP: Markdown Extra
Ruby: Kramdown , Maruku
Mas se você precisa respeitar a verdadeira sintaxe do Markdown, está preso à inserção de HTML bruto, o que é menos ideal.
fonte
Se o seu sabor de remarcação for kramdown, você poderá definir a classe css assim:
Então, no seu arquivo css, você define o css assim:
fonte
Aqui está um exemplo de trabalho para o kramdown, seguindo a resposta do @ Yarin.
Referência: https://kramdown.gettalong.org/syntax.html#inline-attribute-lists
fonte
Python
Markdown
analisador interno .Como mencionado acima, a própria remarcação deixa você pendurado nisso. No entanto, dependendo da implementação, existem algumas soluções alternativas:
Pelo menos uma versão do MD considera
<div>
uma tag de nível de bloco, mas<DIV>
é apenas texto. Todos os irmãos, no entanto, não diferenciam maiúsculas de minúsculas. Isso permite manter a simplicidade da sintaxe do MD, ao custo de adicionar tags de contêineres div.Portanto, o seguinte é uma solução alternativa:
A desvantagem disso é que o código de saída possui
<p>
tags que envolvem as<div>
linhas (as duas, a primeira porque não é e a segunda porque não corresponde. Nenhum navegador se preocupa com isso que eu encontrei, mas o código ganhou ' O MD tende a colocar<p>
tags sobressalentes de qualquer maneira.Várias versões do markdown implementam a convenção;
<tag markdown="1">
nesse caso, o MD fará o processamento normal dentro da tag. O exemplo acima se torna:A versão atual do MultiMarkdown do Fletcher permite que os atributos sigam o link se estiverem usando links referenciados.
fonte
Na redução fina, use o seguinte:
Traduz para:
fonte
Também deve ser mencionado que as
<span>
tags permitem dentro deles - itens em nível de bloco negam o MD nativamente dentro deles, a menos que você os configure para não fazê-lo, mas os estilos em linha permitem o MD nativamente dentro deles. Como tal, costumo fazer algo parecido com ...Não tenho 100% de certeza se isso é universal, mas parece ser o caso em todos os editores de MD que usei.
fonte
Se você só precisa de um seletor para fins de Javascript (como eu fiz), convém usar um
href
atributo em vez de umclass
ouid
:Apenas faça o seguinte:
O Markdown não ignorará ou removerá o
href
atributo, como ocorre com as classes e os IDs.Portanto, em seu Javascript ou jQuery, você pode:
Pelo menos isso funciona na minha versão do Markdown ...
fonte