Estoy usando Marcado que implementa GitHub con sabor rebajas.

Tengo algo de trabajo de las rebajas:

## Test heading
a paragraph.
## second heading
another paragraph

Que crea:

<h2 id="test-heading">Test heading</h2>
<p>a paragraph.</p>
<h2 id="second-heading">second heading</h2>
<p>another paragraph</p>

Me gustaría envoltura de que la reducción de la sección en un div, por ejemplo:

<div class="blog-post">
## Test heading
a paragraph.
## second heading
another paragraph
</div>

Sin embargo, este devuelve el siguiente código HTML:

<div class="blog-post">
## Test heading
a paragraph.
## second heading
another paragraph
</div>

Por ejemplo, no hay rebajas, literalmente ‘## Prueba de título » aparece en el código HTML.

¿Cómo puedo ajustar adecuadamente mi markdown en un div?

He encontrado la siguiente solución, sin embargo es feo y no se trata de una revisión:

<div class="blog-post">
<div></div>

## Test heading
a paragraph.
## second heading
another paragraph

</div>
InformationsquelleAutor mikemaccana | 2015-03-31

5 Comentarios

  1. 55

    Rebajas

    Para las Rebajas, Esto es así por diseño. Desde el Inline HTML sección de la Reducción del precio de referencia:

    Tenga en cuenta que las Rebajas formato de sintaxis no es procesada dentro de nivel de bloque de etiquetas HTML. E. g., usted no puede usar Markdown-estilo énfasis dentro de un bloque HTML.

    Pero está explícitamente permitido por lapso de nivel etiquetas:

    A diferencia de nivel de bloque de etiquetas HTML, Markdown sintaxis es procesada dentro de intervalo de etiquetas de nivel.

    Así, dependiendo de su caso de uso, usted puede conseguir lejos con usar un span en lugar de un div.

    CommonMark

    Si la biblioteca que implementa el uso de CommonMark, estás de suerte. Ejemplo Cien ocho y Cien nueve de la especificación muestran que si usted mantiene una línea vacía entre el bloque HTML y el código markdown, el contenido será analizado como Markdown:

    <div>
    
    *Emphasized* text.
    
    </div>

    debe trabajar, mientras que en el siguiente no:

    <div>
    
    *Emphasized* text.
    
    </div>

    Y, de nuevo, de acuerdo a la misma sección en la referencia, algunas implementaciones de reconocer un adicional de markdown=1 atributo en la etiqueta HTML para habilitar el análisis de las Rebajas en su interior.

    A pesar de que no parece funcionar en StackOverflow aún:

    Pruebas **Rebajas** dentro de un círculo rojo-fondo div.

    • Yo estaba tratando de hacer lo mismo con la rebaja de la biblioteca de python (utilizado en pelican), y el <div markdown=1> truco funcionó. Muchas gracias.
    • Para el registro: TAN intencionalmente bloques de divs, guiones y otros elementos en línea. El cambio de color no es posible en todos (con la excepción de MathJax, pero que no habilitado aquí)
  2. 11

    GitHub Pages soporta el markdown="1" atributo para analizar las rebajas en el interior de los elementos HTML, por ejemplo,

    <div class="tip" markdown="1">Have **fun!**</div>

    Nota: Como de 2019/03, esto no funciona en github.com, sólo GitHub Pages.

    Nota: Comillas, como en markdown="1", no están obligados por el HTML5, pero si usted no utilice comillas (markdown=1), GitHub no la reconoce como HTML. También, el apoyo es buggy ahora. Es probable obtener resultados incorrectos si el elemento HTML es más grande que un solo párrafo. Por ejemplo, debido a los errores que yo era incapaz de integrar una Reducción del precio de lista dentro de un div.

    Si usted se encuentra en un entorno en el que markdown="1" no funciona, pero span no, otra opción es utilizar <span style="display:block"> por lo que a nivel de bloque clases son compatibles con él, por ejemplo,

    <span style="display:block" class="note">It **works!**</span>

    Sugerencia: <span class="note"></span> es más corto que <div class="note" markdown="1"></div>, por lo que si el control de la CSS es posible que prefiera utilizar <span> y agregar display: block; a tu CSS.

    • He probado el markdown="1" en github. no funciona. enlace
    • el span solución funciona a la perfección encontrar en GitHub. enlace muchas Gracias.
    • después de una investigación, Github y Typora no puede hacer esto correctamente, pero el código de visual studio no!
    • funciona en GitHub Páginas, pero no en GitHub en sí, por ejemplo, presenciar el texto **Tip:** que aparecen en esta página, que aparece como Consejo: en el de BPAS en la representación de el mismo archivo. Voy a aclarar el texto.
  3. 10

    Rebaja Extra que se necesita para ser capaz de para las Rebajas formato funciona dentro de un HTML bloques, por favor revise la documentación que se indica aquí -> https://michelf.ca/projects/php-markdown/extra/

    Rebaja Extra le da una manera de poner las Rebajas con formato de texto en el interior de
    cualquier nivel de bloque de etiquetas. Puede hacer esto mediante la adición de una rebaja de atributo para el
    etiqueta con el valor 1 — lo que da a las rebajas=»1″

  4. 0

    Mirando en el google docs para Ampliación De Marcado y la modificación de la html representador de método, se puede hacer algo como esto para reemplazar las piezas entre las etiquetas con analizan las rebajas. No he hecho pruebas exhaustivas, pero funcionó con mis primeros intentos.

    const marked = require('marked');
    const renderer = new marked.Renderer();
    renderer.html = (mixedContent) => mixedContent.replace(/[^<>]+?(?=<)/g, (match) => {
        const tokens = marked.lexer(match);
        return marked.parser(tokens);
    });

    Editar

    esta nueva expresión regular será asegurarse de que sólo las rebajas con líneas entre ella y las etiquetas html que se analiza.

    const marked = require('marked');
    const renderer = new marked.Renderer();
    renderer.html = (mixedContent) => mixedContent.replace(/\n\n[^<>]+?\n\n(?=<)/g, (match) => {
        const tokens = marked.lexer(match);
        return marked.parser(tokens);
    });
  5. 0

    Último recurso:

    Algunas bibliotecas pueden ser sensibles a las mayúsculas.

    Intentar <DIV> en lugar de <div> y ver qué pasa.

    Markdownsharp tiene esta característica – aunque en StackOverflow que tira de todos los DIVs de todos modos, así que no esperes que el trabajo aquí.

    • Me gustaría eliminar este si no fuera cierto, pero para mí esto era parte de mi, la solución de tan extraño como puede parecer
    • Suena como que usted está a solo engañar a un buggy de rebajas analizador de aplicación (case sensitive), que pueden parche en el futuro.
    • Eso es exactamente lo que yo hice

Dejar respuesta

Please enter your comment!
Please enter your name here