Estoy tratando de descubrir cómo hacer referencia a otra área de una página con Markdown. Puedo hacerlo funcionar si agrego un
<div id="mylink" />
y para el enlace hacer:
[My link](#mylink)
Pero supongo que hay otra forma de hacer un enlace in-page en Markdown que no implique la div
etiqueta directa .
¿Algunas ideas?
<div/>
puede alterar el formateador para el resto de la página. Uso<a id="ident"/>
. Mira mi respuesta.[anchor][]
sintaxis para hacer esto. github.com/fletcher/MultiMarkdown/wiki/…Respuestas:
Mira esta respuesta .
En resumen, haga un destino con
insertado en cualquier parte de su marcado de descuento (por ejemplo, en un encabezado:
y vincularlo usando el enlace de descuento:
o
No lo use
<div>
: esto dañará el diseño para muchos renderizadores.(He cambiado
id=
a loname=
anterior. Vea esta respuesta para la tediosa explicación).fuente
<a name="..." />
es obsoleta pero se ajusta a las especificaciones HTML posteriores. Si<div>
podría representarse como un bloque disruptivo (tal vez si por razones no reveladas el CSS está dando un tamaño) ¿tal vez<span>
(un elemento en línea) podría hacer el truco?Supongo que esto depende de lo que esté usando para generar html a partir de su descuento. Me di cuenta de que jekyll (se usa por defecto en las páginas gihub.io) agrega automáticamente el atributo id = "" a los encabezados en el html que genera.
Por ejemplo, si eres Markdown es
El html resultante se verá así:
Para que pueda vincularlo simplemente por
[My link](#my-header)
fuente
Con la versión PHP de Markdown , también puede vincular encabezados a identificadores de fragmentos dentro de la página utilizando una sintaxis como cualquiera de las siguientes, como se documenta aquí
y entonces
Desafortunadamente, esta sintaxis actualmente solo es compatible con encabezados, pero al menos podría ser útil para crear una tabla de contenido.
fuente
El ancla de destino para un enlace en una página HTML puede ser cualquier elemento con un
id
atributo. Ver enlaces en el sitio W3C. Aquí hay una cita de la sección correspondiente:Markdown trata HTML como HTML (consulte HTML en línea ), por lo que puede crear sus identificadores de fragmentos a partir de cualquier elemento que desee. Si, por ejemplo, desea vincular a un párrafo, simplemente envuelva el párrafo en una etiqueta de párrafo e incluya una identificación:
Luego use su Markdown estándar
[My link](#mylink)
para crear un enlace para fragmentar el ancla. Esto ayudará a mantener su HTML limpio, ya que no hay necesidad de un marcado adicional.fuente
<p>
etiqueta en Markdown puede quitar el CSS de un párrafo normal. Diría que use con precaución, soy nuevo en Markdown pero tiene algunas peculiaridades.<p>
etiqueta en Markdown puede quitar el CSS de un párrafo normal". Markdown envuelve los párrafos en las<p>
etiquetas e ignora los que ya tienen<p>
etiquetas. No puedo ver cómo esto afectaría CSS ...Como del uso que Visual Studio Team Foundation Server (TFS) 2015, lo que realmente no le gusta incrustado
<a>
o<div>
elementos, por lo menos en las cabeceras. Tampoco le gustan los emoji en los encabezados:Se traduce a:
Entonces, los enlaces deberían usar eso
id
(que rompe esta y otras extensiones de vista previa en Visual Studio) o eliminar el emoji:Donde la última versión funciona tanto en línea en TFS como en la vista previa de descuento de Visual Studio.
fuente