Docs  /  Configuración  /  Personalizar el diseño (CSS)

Personalizar el diseño (CSS)

Última actualización: 06. noviembre 2026

El configurador debe parecerse a su tienda: colores, fuente, esquinas, el aspecto de los campos de selección. Todo esto se adapta con CSS, sin nada de JavaScript. Esta página se aplica al motor de frontend V3. Legacy genera otro HTML, por lo que allí no funcionan las variables y clases que se describen a continuación.

Lo que el configurador ya toma de la tienda

En una tienda –a través de un plugin de tienda o del fragmento HTML– el configurador toma de su tema la fuente, el tamaño de fuente y el color del texto. Para ello no tiene que hacer nada. Solo tiene que adaptar lo que el configurador trae consigo: color de acento, bordes, fondos, esquinas.

Si lo integra con data-configento-embed-mode="admin-preview", muestra él mismo el título, el precio y el resumen y también usa sus propios colores para los textos. Incluso entonces hereda la fuente de la página.

Dónde va su CSS

Tiene dos lugares:

  • El tema de su tienda: lo adecuado si todos los configuradores deben tener el mismo aspecto.
  • CSS personalizado en la Configuración del componente, en Diseño: lo adecuado para un solo componente. Se carga con el configurador, en la tienda y en la vista previa del admin.

Escriba [data-configento] delante de las reglas para elementos individuales, p. ej. [data-configento] .cfg-toggle-item__price. El configurador carga su propio CSS después de su tema; con este prefijo, su regla prevalece de todos modos. Para las variables de abajo no hace falta.

Colores, fuente y esquinas

La adaptación más sencilla: definir variables en :root. Actúan en todo el configurador y también en la vista ampliada de imágenes y en las ventanas de información, que se abren fuera del configurador.

:root {
  --configento-color-accent: #1d3c78;
  --configento-color-border: #c8d0e0;
  --configento-radius-md: 0;
}
Variable Predeterminado Actúa sobre
--configento-color-accent #2563eb Valores elegidos, botones de radio y casillas de verificación, imágenes elegidas, pestaña activa, barra de progreso, botón Siguiente, botón de acción, enlaces en textos
--configento-color-accent-fg #ffffff Texto sobre superficies en el color de acento, p. ej. en el botón Siguiente
--configento-color-accent-soft #dbeafe Fondo claro en el color de acento, p. ej. en la pestaña activa
--configento-color-border #e2e8f0 Bordes y líneas divisorias
--configento-color-border-strong #868f9e Bordes de campos de entrada, botones y mosaicos de imagen
--configento-color-bg #ffffff Fondo del configurador
--configento-color-bg-subtle #f8fafc Superficies ligeramente destacadas
--configento-color-bg-elevated #ffffff Grupos, listas de selección, botones y ventanas
--configento-color-fg #0f172a Texto: solo con admin-preview; en la tienda procede del tema
--configento-color-fg-muted #64748b Textos secundarios: solo con admin-preview
--configento-color-error #b91c1c Mensajes de error y campos con errores
--configento-color-error-soft #fee2e2 Fondo claro de los errores
--configento-color-success, --configento-color-success-soft #059669, #d1fae5 Mensajes de éxito
--configento-color-warning, --configento-color-warning-soft #b45309, #fef3c7 Advertencias
--configento-radius-sm, -md, -lg 4px, 8px, 12px Esquinas: elementos pequeños, campos y mosaicos, ventanas
--configento-font-family Fuente de la página Fuente: solo es necesaria si el configurador debe usar una fuente distinta de la de la página
--cfg-value-image-size 40px Tamaño de las imágenes en las filas de botones de radio y casillas de verificación

Los nombres de estas variables se mantienen iguales en todas las versiones 3.x.

Color activo y color principal: el color de acento de un configurador procede de la primera de estas fuentes que esté definida:

  1. el Color activo del componente (configuración del componente → Diseño),
  2. --configento-color-accent en su CSS,
  3. el Color principal en Ajustes → Marca; también se aplica a los PDF y a los correos electrónicos,
  4. el azul predeterminado #2563eb.

Para un mismo color en todos los componentes basta con el color principal de Marca. El Color activo solo lo necesita si un componente debe ser distinto; entonces también se aplica en lugar de su CSS.

Otra fuente: si el configurador debe usar una fuente distinta de la de la página, defínala en el elemento con data-configento. La fuente debe estar cargada en la página, por ejemplo a través de su tema.

[data-configento] { font-family: 'Source Sans 3', sans-serif; }

Diseñar elementos individuales

Para ir más allá de las variables existen clases y atributos que garantizamos: se mantienen iguales en todas las versiones 3.x y solo cambian con una nueva primera cifra de versión. Las demás clases y el resto de la estructura HTML pueden cambiar.

Marco de cada característica

Clase / atributo Elemento
.cfg-char La característica completa. También lleva las clases del campo Clase CSS de la característica.
[data-configento-char-id], [data-configento-char-type] En el mismo elemento: ID y tipo de datos de la característica, p. ej. radiobuttons, checkbox, text, area, select
[data-configento-invalid] En el mismo elemento, mientras se muestra un mensaje de error
.cfg-char__head Fila de cabecera con el título
.cfg-char__title Título
.cfg-char__required Asterisco de campo obligatorio en el título
.cfg-char__info Texto informativo bajo el título
.cfg-char__body El elemento de entrada con todo lo que le pertenece
.cfg-char__errors, .cfg-char__error Lista de mensajes de error y cada mensaje individual
.cfg-char-disabled Rodea una característica que una regla bloquea cuando Valores excluidos por reglas está en Mostrar desactivados. La característica aparece en gris y no se puede usar.

Botones de radio y casillas de verificación

Clase / atributo Elemento
.cfg-toggle-list Lista de todos los valores
.cfg-toggle-item con [data-configento-value-id] Un valor, con su ID
.cfg-toggle-item__label El label que rodea toda la fila. El input (type="radio" o type="checkbox") es su hijo directo.
.cfg-toggle-item__image Imagen del valor
.cfg-toggle-item__text Bloque de texto con etiqueta y textos informativos
.cfg-toggle-item__label-text Etiqueta del valor
.cfg-toggle-item__info Texto informativo del valor
.cfg-toggle-item__price Recargo
.cfg-toggle-item__info-trigger El botón (i) tras el que está el texto informativo del valor, cuando Tooltip para valores está activado en la característica
[data-configento-disabled] En .cfg-toggle-item y en los mosaicos de imagen de una lista con imágenes, cuando una regla bloquea el valor y Valores excluidos por reglas está en Mostrar desactivados

Al estado seleccionado se accede a través del input, p. ej. .cfg-toggle-item__label:has(input:checked). Las etiquetas largas se dividen con guiones y el recargo se queda en una sola línea. El tamaño de las imágenes se ajusta con --cfg-value-image-size.

Campos de entrada y listas de selección

Clase Elemento
input.cfg-input Campo de entrada de una línea
textarea.cfg-textarea Campo de entrada de varias líneas
select.cfg-select Lista de selección

Imagen combinada en la vista 360°

Clase Elemento
.cfg-combined-image--rotating La imagen combinada giratoria
.cfg-combined-image__progress Indicador de carga mientras se cargan las imágenes. Su color procede del Color de la animación de carga del componente.
.cfg-combined-image__hint El aviso «Vista de 360° — arrastra para girar», hasta que el cliente gira la imagen por primera vez

Si el CSS no basta porque una característica debe tener un aspecto y un comportamiento totalmente distintos (por ejemplo, como una matrícula), dibújela en JavaScript con una representación propia.

La forma más sencilla de dirigirse a una característica concreta es una clase propia: introdúzcala en el editor, en el campo Clase CSS de la característica, y aparecerá en el elemento .cfg-char.

Campos uno al lado del otro

Con las clases de columnas coloca las características de un grupo una al lado de la otra, por ejemplo el nombre y los apellidos en una misma fila. Introduzca la clase en el editor, en el campo Clase CSS de la característica. No necesita CSS propio.

Clase Ancho
cfg-col-3 Un cuarto de la fila
cfg-col-4 Un tercio
cfg-col-6 La mitad
cfg-col-8 Dos tercios
cfg-col-12 La fila entera
  • Las características llenan la fila en su orden dentro del grupo. Dos características seguidas con cfg-col-6 comparten una fila.
  • Las características sin clase de columna en el mismo grupo ocupan toda la fila.
  • Si el grupo mide menos de 480 píxeles de ancho, por ejemplo en un smartphone, todas las características vuelven a apilarse.
  • Las clases solo actúan en grupos que usan al menos una de ellas. Los grupos sin clase de columna y los anchos de su tema (p. ej. grid12-6 de Magento) no cambian.
  • Solo con el motor frontend V3.

Ejemplos

Botones de radio propios: círculo con CSS en lugar del estándar del navegador y fila elegida resaltada:

[data-configento] [data-configento-char-type="radiobuttons"] .cfg-toggle-item__label > input {
  appearance: none;
  width: 1.25rem;
  height: 1.25rem;
  border: 2px solid var(--configento-color-accent);
  border-radius: 50%;
}
[data-configento] [data-configento-char-type="radiobuttons"] .cfg-toggle-item__label > input:checked {
  background: radial-gradient(var(--configento-color-accent) 45%, transparent 50%);
}
[data-configento] .cfg-toggle-item__label:has(input:checked) {
  background: var(--configento-color-accent-soft);
}

Para ello, defina --configento-color-accent y --configento-color-accent-soft en :root, como se muestra arriba.

Mostrar los errores con más claridad:

[data-configento] .cfg-char[data-configento-invalid] .cfg-char__title { color: var(--configento-color-error); }
[data-configento] .cfg-char[data-configento-invalid] .cfg-input { border-color: var(--configento-color-error); }

Ocultar los recargos, por ejemplo si su tienda los muestra de otra forma:

[data-configento] .cfg-toggle-item__price { display: none; }

Imágenes más grandes en los valores y valores bloqueados más tenues:

:root { --cfg-value-image-size: 64px; }
[data-configento] .cfg-toggle-item[data-configento-disabled] { opacity: 0.4; }

Solución de problemas

Problema Causa y solución
Su regla no tiene efecto El configurador carga su CSS después de su tema. Escriba [data-configento] delante del selector.
El color funciona en el configurador, pero no en la vista ampliada de imágenes La variable está definida en un elemento en lugar de en :root. La vista ampliada se abre fuera del configurador.
Se ignora el color de acento del CSS En el componente hay un Color activo definido. Vacíe el campo.
El color del texto no cambia En la tienda, el color del texto procede del tema. --configento-color-fg solo funciona con admin-preview.
Tras cambiar a V3 todo se ve distinto Legacy tiene otras clases. Reconstruya su CSS con las variables y clases de esta página y compruébelo en la vista previa.

Próximos pasos


← Todos los artículos Prueba gratuita 14 días