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:
- el Color activo del componente (configuración del componente → Diseño),
--configento-color-accenten su CSS,- el Color principal en Ajustes → Marca; también se aplica a los PDF y a los correos electrónicos,
- 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-6comparten 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-6de 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
- Configuración del componente: Color activo y CSS personalizado
- Integración fragmento HTML
- Interfaz JavaScript (V3): si quiere intervenir más allá del aspecto
- Motor de frontend: Legacy o V3