Saltar al contenido
Índice de Kit UI
Kit UI Componentes

Embed responsivo.

Patrón canónico de embed responsivo para cochid-graphs, mapas, periodismo2 y firmas y documentos.

Verlo por niveles

Primero el componente, después la variación de marca y finalmente su uso dentro de una página.

Nivel 2Compañía de Innovación de Santiago · variación
Fuente: servicio COCHID · tablero de empleo · vista 3Abrir tablero
Nivel 3Dentro de una página
Sitio · sección
Fuente: servicio COCHID · vista 1Abrir vista completa
Ver y copiar el código de este render
HTML del nivel canónico
<figure class="ui-sample ui-embed" data-embed="responsive"><div class="ui-embed__frame ui-embed__frame--wide"><iframe title="Resumen del catálogo de datos COCHID" srcdoc="&lt;!doctype html&gt;&lt;html lang=&#x27;es&#x27;&gt;&lt;meta charset=&#x27;utf-8&#x27;&gt;&lt;style&gt;body{margin:0;padding:18px;color:#172028;background:#eef3f6;font:14px sans-serif}dl{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}div{border-top:1px solid #87939c;padding-top:8px}dt{font-size:11px;color:#56616b}dd{margin:3px 0;font-size:20px}table{width:100%;border-collapse:collapse;margin-top:20px;font-size:13px}caption{text-align:left;font-weight:600;padding-bottom:6px}th,td{text-align:left;padding:6px 12px 6px 0;border-bottom:1px solid #c9d1d6}th{font-size:11px;color:#56616b;font-weight:600}&lt;/style&gt;&lt;strong&gt;Catálogo de datos COCHID · septiembre de 2026&lt;/strong&gt;&lt;dl&gt;&lt;div&gt;&lt;dt&gt;Series publicadas&lt;/dt&gt;&lt;dd&gt;7.984&lt;/dd&gt;&lt;/div&gt;&lt;div&gt;&lt;dt&gt;Regiones con datos&lt;/dt&gt;&lt;dd&gt;16 de 16&lt;/dd&gt;&lt;/div&gt;&lt;div&gt;&lt;dt&gt;Series al día&lt;/dt&gt;&lt;dd&gt;98%&lt;/dd&gt;&lt;/div&gt;&lt;/dl&gt;&lt;table&gt;&lt;caption&gt;Últimas series actualizadas&lt;/caption&gt;&lt;thead&gt;&lt;tr&gt;&lt;th&gt;Serie&lt;/th&gt;&lt;th&gt;Fuente&lt;/th&gt;&lt;th&gt;Actualizada&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;Desocupación regional&lt;/td&gt;&lt;td&gt;INE&lt;/td&gt;&lt;td&gt;26-09-2026&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Ejecución presupuestaria&lt;/td&gt;&lt;td&gt;DIPRES&lt;/td&gt;&lt;td&gt;25-09-2026&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Matrícula escolar por comuna&lt;/td&gt;&lt;td&gt;MINEDUC&lt;/td&gt;&lt;td&gt;24-09-2026&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/html&gt;" loading="lazy"></iframe></div><figcaption><span>Fuente: servicio COCHID · vista 1</span><a href="#abrir-embed">Abrir vista completa</a></figcaption></figure>

Variaciones por marca y sitio

Cada cambio visible declara su autoridad; lo que permanece canónico no se vuelve a inventar en el producto.

cochid.cl

COCHID

Autoridad: core-style/DECISIONES.md M15 y LOGOS-CANONICOS.md
Fuente: servicio COCHID · vista 1Abrir vista completa

Cambia en esta marca

  • Cuadrado azul y namebrand de tres líneas
  • Azul COCHID en selección, capas y series

Permanece canónico

  • Estructura y semántica comunes
  • Fuentes, unidades y alternativa tabular
innovacionsantiago.cl

Compañía de Innovación de Santiago

Autoridad: CONSTITUTION.md + LOGOS-CANONICOS.md
Fuente: servicio COCHID · tablero de empleo · vista 3Abrir tablero

Cambia en esta marca

  • Navegación y contenido propios del servicio
  • Acento reservado para acciones y datos

Permanece canónico

  • Mark CIS y namebrand de tres líneas
  • IBM Plex Sans, foco, espaciado y anatomía

Comparación histórica recuperable

Compara la propuesta con cortes reales del repositorio. La ausencia de una muestra se declara y nunca se reconstruye de memoria.

Estado actual
Embed responsivo tiene 3 implementaciones observadas en 2 repositorios: cochid/cochid-scribe, cochid/cochid-taller.
Cambio propuesto
Publicar en r19 el contrato de Embed responsivo para Patrón canónico de embed responsivo para cochid-graphs, mapas, periodismo2 y firmas y documentos.
Qué ocurre si respondes No
No se adopta el contrato r19 de Embed responsivo; las 3 implementaciones observadas permanecen sin migración.

Preparando comparación histórica…

Antes / r19

La comparación convierte una regla abstracta en una diferencia visible y verificable.

r19 · correctoContrato canónico renderizado
Fuente: servicio COCHID · vista 1Abrir vista completa
  • Mantén proporción, título accesible, fuente y vista completa.
  • Proporciona consentimiento y fallback cuando depende de terceros.
Antes · problema observadoAnti-ejemplo no interactivo
Contenido incorporadoRectángulo vacío sin fuente, fallback ni vista completa
  • No cargues terceros sin política CSP y privacidad.
  • No dejes un rectángulo vacío cuando falla el origen.

Responsive

La misma anatomía debe conservar lectura, foco y acciones sin cortar contenido ni crear scroll horizontal en la página.

320 pxMóvil y zoom
Fuente: servicio COCHID · vista 1Abrir vista completa
1280 pxEscritorio
Fuente: servicio COCHID · tablero de empleo · vista 3Abrir tablero

Cobertura

DimensiónContrato
Propietario canónicoSistema de diseño CIS y servicio productor · core/core-style
Consumidorescochid-graphs, Mapas, Periodismo2 y Firmas y Documentos
DependenciasCSP, sandbox, fallback enlazable
Estadocandidato

Evidencia de adopción

Patrón observado. 3 implementaciones observadas en 2 repositorios.

La observación demuestra uso existente; la aceptación canónica sigue dependiendo de esta ficha y de su propietario.

DatoResultado
ClasificaciónPatrón observado
Implementaciones3 implementaciones observadas
Repositorioscochid/cochid-scribe, cochid/cochid-taller
Snapshotkit/componentes/componentes-observados.json

Consumidores observados

El inventario conserva repositorio, archivo fuente y criterio de asociación. Observar una implementación no la convierte automáticamente en canónica.

Estados

Estado requerido
cargando
disponible
bloqueado
error
sin JavaScript

Accesibilidad

  • Conserva nombre accesible, orden de lectura y foco visible.
  • Funciona a 320 px, con zoom de 200% y texto largo.
  • El color nunca es la única señal de estado o acción.
  • El contenido esencial permanece disponible sin JavaScript.

Código HTML

Copia el bloque completo; después cambia contenido y destinos, no su anatomía.

Código de referencia
<figure class="ui-sample ui-embed" data-embed="responsive"><div class="ui-embed__frame ui-embed__frame--wide"><iframe title="Resumen del catálogo de datos COCHID" srcdoc="&lt;!doctype html&gt;&lt;html lang=&#x27;es&#x27;&gt;&lt;meta charset=&#x27;utf-8&#x27;&gt;&lt;style&gt;body{margin:0;padding:18px;color:#172028;background:#eef3f6;font:14px sans-serif}dl{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}div{border-top:1px solid #87939c;padding-top:8px}dt{font-size:11px;color:#56616b}dd{margin:3px 0;font-size:20px}table{width:100%;border-collapse:collapse;margin-top:20px;font-size:13px}caption{text-align:left;font-weight:600;padding-bottom:6px}th,td{text-align:left;padding:6px 12px 6px 0;border-bottom:1px solid #c9d1d6}th{font-size:11px;color:#56616b;font-weight:600}&lt;/style&gt;&lt;strong&gt;Catálogo de datos COCHID · septiembre de 2026&lt;/strong&gt;&lt;dl&gt;&lt;div&gt;&lt;dt&gt;Series publicadas&lt;/dt&gt;&lt;dd&gt;7.984&lt;/dd&gt;&lt;/div&gt;&lt;div&gt;&lt;dt&gt;Regiones con datos&lt;/dt&gt;&lt;dd&gt;16 de 16&lt;/dd&gt;&lt;/div&gt;&lt;div&gt;&lt;dt&gt;Series al día&lt;/dt&gt;&lt;dd&gt;98%&lt;/dd&gt;&lt;/div&gt;&lt;/dl&gt;&lt;table&gt;&lt;caption&gt;Últimas series actualizadas&lt;/caption&gt;&lt;thead&gt;&lt;tr&gt;&lt;th&gt;Serie&lt;/th&gt;&lt;th&gt;Fuente&lt;/th&gt;&lt;th&gt;Actualizada&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;Desocupación regional&lt;/td&gt;&lt;td&gt;INE&lt;/td&gt;&lt;td&gt;26-09-2026&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Ejecución presupuestaria&lt;/td&gt;&lt;td&gt;DIPRES&lt;/td&gt;&lt;td&gt;25-09-2026&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Matrícula escolar por comuna&lt;/td&gt;&lt;td&gt;MINEDUC&lt;/td&gt;&lt;td&gt;24-09-2026&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/html&gt;" loading="lazy"></iframe></div><figcaption><span>Fuente: servicio COCHID · vista 1</span><a href="#abrir-embed">Abrir vista completa</a></figcaption></figure>

Código TAILWIND

Copia el bloque completo; después cambia contenido y destinos, no su anatomía.

Código de referencia
<figure class="ui-sample ui-embed border border-slate-300 bg-white p-4 text-slate-950 grid gap-3" data-embed="responsive"><div class="ui-embed__frame ui-embed__frame--wide"><iframe title="Resumen del catálogo de datos COCHID" srcdoc="&lt;!doctype html&gt;&lt;html lang=&#x27;es&#x27;&gt;&lt;meta charset=&#x27;utf-8&#x27;&gt;&lt;style&gt;body{margin:0;padding:18px;color:#172028;background:#eef3f6;font:14px sans-serif}dl{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}div{border-top:1px solid #87939c;padding-top:8px}dt{font-size:11px;color:#56616b}dd{margin:3px 0;font-size:20px}table{width:100%;border-collapse:collapse;margin-top:20px;font-size:13px}caption{text-align:left;font-weight:600;padding-bottom:6px}th,td{text-align:left;padding:6px 12px 6px 0;border-bottom:1px solid #c9d1d6}th{font-size:11px;color:#56616b;font-weight:600}&lt;/style&gt;&lt;strong&gt;Catálogo de datos COCHID · septiembre de 2026&lt;/strong&gt;&lt;dl&gt;&lt;div&gt;&lt;dt&gt;Series publicadas&lt;/dt&gt;&lt;dd&gt;7.984&lt;/dd&gt;&lt;/div&gt;&lt;div&gt;&lt;dt&gt;Regiones con datos&lt;/dt&gt;&lt;dd&gt;16 de 16&lt;/dd&gt;&lt;/div&gt;&lt;div&gt;&lt;dt&gt;Series al día&lt;/dt&gt;&lt;dd&gt;98%&lt;/dd&gt;&lt;/div&gt;&lt;/dl&gt;&lt;table&gt;&lt;caption&gt;Últimas series actualizadas&lt;/caption&gt;&lt;thead&gt;&lt;tr&gt;&lt;th&gt;Serie&lt;/th&gt;&lt;th&gt;Fuente&lt;/th&gt;&lt;th&gt;Actualizada&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;Desocupación regional&lt;/td&gt;&lt;td&gt;INE&lt;/td&gt;&lt;td&gt;26-09-2026&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Ejecución presupuestaria&lt;/td&gt;&lt;td&gt;DIPRES&lt;/td&gt;&lt;td&gt;25-09-2026&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Matrícula escolar por comuna&lt;/td&gt;&lt;td&gt;MINEDUC&lt;/td&gt;&lt;td&gt;24-09-2026&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/html&gt;" loading="lazy"></iframe></div><figcaption class="text-sm text-slate-600"><span>Fuente: servicio COCHID · vista 1</span><a class="underline underline-offset-4" href="#abrir-embed">Abrir vista completa</a></figcaption></figure>

Código REACT

Copia el bloque completo; después cambia contenido y destinos, no su anatomía.

Código de referencia
export interface EmbedResponsivoProps {
  /** Nombre accesible del `<iframe>`: qué muestra la vista incorporada. */
  title?: string;
  /** Dirección de la vista incorporada; si la pasas sin `srcDoc`, no se emite el documento de ejemplo. */
  src?: string;
  /** Documento HTML completo para el `<iframe>` (atributo `srcdoc`); tiene prioridad sobre `src`. */
  srcDoc?: string;
  /** Restricciones del `<iframe>` (atributo `sandbox`), por ejemplo `"allow-scripts"`. */
  sandbox?: string;
  /** Proporción del marco: `wide` es 16:9 (tableros, series); `paper` es 3:4 (páginas). */
  frame?: "wide" | "paper";
  /** Línea de fuente del pie: servicio que produce la vista y versión. */
  source?: string;
  /** Enlace a la vista completa fuera del marco; sin él no se muestra el enlace. */
  href?: string;
  linkLabel?: string;
  className?: string;
}

const DOCUMENTO =
  "<!doctype html><html lang='es'><meta charset='utf-8'><style>body{margin:0;padding:18px;color:#172028;background:#eef3f6;font:14px sans-serif}dl{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}div{border-top:1px solid #87939c;padding-top:8px}dt{font-size:11px;color:#56616b}dd{margin:3px 0;font-size:20px}table{width:100%;border-collapse:collapse;margin-top:20px;font-size:13px}caption{text-align:left;font-weight:600;padding-bottom:6px}th,td{text-align:left;padding:6px 12px 6px 0;border-bottom:1px solid #c9d1d6}th{font-size:11px;color:#56616b;font-weight:600}</style><strong>Catálogo de datos COCHID · septiembre de 2026</strong><dl><div><dt>Series publicadas</dt><dd>7.984</dd></div><div><dt>Regiones con datos</dt><dd>16 de 16</dd></div><div><dt>Series al día</dt><dd>98%</dd></div></dl><table><caption>Últimas series actualizadas</caption><thead><tr><th>Serie</th><th>Fuente</th><th>Actualizada</th></tr></thead><tbody><tr><td>Desocupación regional</td><td>INE</td><td>26-09-2026</td></tr><tr><td>Ejecución presupuestaria</td><td>DIPRES</td><td>25-09-2026</td></tr><tr><td>Matrícula escolar por comuna</td><td>MINEDUC</td><td>24-09-2026</td></tr></tbody></table></html>";

/**
 * Embed responsivo: marco con proporción fija para incorporar una vista de otro servicio (tablero, serie, mapa) con su fuente y el enlace a la vista completa.
 *
 * El `<iframe>` carga en diferido (`loading="lazy"`) y necesita `title`. Pasa `src` para una dirección o `srcDoc` para un documento HTML ya saneado.
 *
 * @example <EmbedResponsivo title="Tablero de empleo regional" src="https://datos.cochid.cl/vistas/empleo" source="Fuente: servicio COCHID · vista 2" href="https://datos.cochid.cl/empleo" />
 */
export function EmbedResponsivo({
  title = "Resumen del catálogo de datos COCHID",
  src,
  srcDoc,
  sandbox,
  frame = "wide",
  source = "Fuente: servicio COCHID · vista 1",
  href = "#abrir-embed",
  linkLabel = "Abrir vista completa",
  className,
}: EmbedResponsivoProps) {
  const documento = srcDoc ?? (src ? undefined : DOCUMENTO);
  const enlace = linkLabel && href ? <a href={href}>{linkLabel}</a> : null;
  return (
    <figure className={["ui-embed", className].filter(Boolean).join(" ")} data-embed="responsive">
      <div className={`ui-embed__frame ui-embed__frame--${frame}`}>
        <iframe title={title} src={src} srcDoc={documento} sandbox={sandbox} loading="lazy"></iframe>
      </div>
      {source || enlace ? (
        <figcaption>
          {source ? <span>{source}</span> : null}
          {enlace}
        </figcaption>
      ) : null}
    </figure>
  );
}