Oh MyUtils

Conversor HTML a Markdown - Convertir HTML a MD y MD a HTML en Línea

Convierta entre formatos HTML y Markdown bidireccionalmente con soporte GFM para tablas, listas de tareas y tachado. 100% del lado del cliente, sus datos nunca salen de su navegador.

Preguntas Frecuentes

¿Qué es un conversor de HTML a Markdown?

Un conversor de HTML a Markdown es una herramienta que transforma el marcado HTML (el lenguaje basado en etiquetas utilizado para estructurar páginas web) en sintaxis Markdown (un lenguaje de formato ligero y legible). Por ejemplo, <code>&lt;h1&gt;Título&lt;/h1&gt;</code> se convierte en <code># Título</code>, <code>&lt;strong&gt;negrita&lt;/strong&gt;</code> se convierte en <code>**negrita**</code>. Es útil para migrar contenido de plataformas CMS basadas en HTML (WordPress, Drupal) a sistemas basados en Markdown (Hugo, Jekyll, Gatsby), limpiar contenido web scrapeado o convertir documentación HTML en archivos Markdown para repositorios de GitHub.

¿Cómo uso este conversor de HTML a Markdown?

1. Seleccione la dirección de conversión: <strong>HTML a Markdown</strong> o <strong>Markdown a HTML</strong>. 2. Pegue su contenido en el área de entrada, o haga clic en <strong>Sample</strong> para cargar contenido de ejemplo, o <strong>Upload</strong> para cargar un archivo. 3. La conversión ocurre automáticamente en tiempo real. 4. Para HTML a Markdown, ajuste las opciones de formato (estilo de título, marcador de viñeta, estilo de bloque de código). 5. Revise la salida convertida. 6. Haga clic en <strong>Copy</strong> para copiar o <strong>Download</strong> para guardar como archivo. 7. Use el botón <strong>Swap</strong> para invertir la dirección con los datos actuales.

¿Mis datos están seguros? ¿Se envían a un servidor?

Sus datos están 100% seguros y nunca salen de su navegador. Este conversor usa la biblioteca Turndown (para HTML a Markdown) y la biblioteca Marked (para Markdown a HTML), ambas ejecutándose completamente en JavaScript del lado del cliente. No se transmiten datos a ningún servidor, no se almacenan en ninguna base de datos ni se registran en ningún lugar. Todo el análisis y la conversión ocurren localmente en su dispositivo. Puede verificarlo desconectándose de internet: la herramienta funciona completamente sin conexión después de la carga inicial de la página.

¿Qué elementos HTML son compatibles para la conversión a Markdown?

Este conversor es compatible con todos los elementos HTML estándar que tienen equivalentes en Markdown: encabezados (h1-h6), párrafos (p), negrita (strong/b), cursiva (em/i), tachado (del/s), enlaces (a), imágenes (img), listas ordenadas y desordenadas (ol/ul/li), citas (blockquote), bloques de código (pre/code), código en línea (code), líneas horizontales (hr) y tablas (table). También admite extensiones de GitHub Flavored Markdown, incluyendo tablas, listas de tareas y tachado.

¿Qué sintaxis de Markdown es compatible para la conversión a HTML?

La dirección Markdown a HTML admite la especificación completa de CommonMark más las extensiones de GitHub Flavored Markdown (GFM). Esto incluye: encabezados (ATX # y Setext), énfasis y negrita (* y **), enlaces (en línea y referencia), imágenes, bloques de código con indicaciones de lenguaje, citas, listas ordenadas y desordenadas (incluyendo anidadas), líneas horizontales, tablas GFM, listas de tareas, tachado y URLs auto-enlazadas.

¿Puedo personalizar el formato de salida de Markdown?

Sí, al convertir HTML a Markdown, puede configurar varias opciones de formato: <strong>Estilo de título</strong> (ATX con símbolos # o Setext con subrayado), <strong>Marcador de viñeta</strong> (guion -, asterisco * o más +) y <strong>Estilo de bloque de código</strong> (cercado con backticks o indentado con 4 espacios). Todas las opciones se sincronizan con la URL para compartir enlaces con sus configuraciones preferidas.

¿Qué sucede con los estilos CSS y JavaScript en el HTML durante la conversión?

Los estilos CSS (atributos de estilo en línea y nombres de clase), el código JavaScript (etiquetas script y manejadores de eventos) y otros elementos no relacionados con el contenido se eliminan durante la conversión. El conversor se enfoca solo en la conversión a nivel de contenido, extrayendo la estructura semántica y el contenido de texto del HTML, no el estilo visual. Esto es por diseño, ya que Markdown es un formato de contenido que no admite estilos.

Ejemplos de Código

// HTML to Markdown conversion using Turndown library
// Install: npm install turndown turndown-plugin-gfm

const TurndownService = require('turndown');
const { gfm } = require('turndown-plugin-gfm');

function htmlToMarkdown(html, options = {}) {
  const {
    headingStyle = 'atx',
    bulletListMarker = '-',
    codeBlockStyle = 'fenced',
  } = options;

  try {
    const turndownService = new TurndownService({
      headingStyle,
      bulletListMarker,
      codeBlockStyle,
      hr: '---',
      fence: '```',
      emDelimiter: '_',
      strongDelimiter: '**',
      linkStyle: 'inlined',
    });
    turndownService.use(gfm);
    const markdown = turndownService.turndown(html);
    return { success: true, output: markdown };
  } catch (error) {
    return { success: false, error: error.message };
  }
}

// Markdown to HTML using marked
// Install: npm install marked
const { marked } = require('marked');

function markdownToHtml(markdown) {
  try {
    const html = marked.parse(markdown, { gfm: true });
    return { success: true, output: html };
  } catch (error) {
    return { success: false, error: error.message };
  }
}

// Example usage
const html = '<h1>Hello</h1><p>This is <strong>bold</strong></p>';
const result = htmlToMarkdown(html);
console.log(result.output);
// Output: # Hello\n\nThis is **bold**

Herramientas relacionadas