LanderLab te permite diseñar quizzes de forma visual, pero si necesitas más control puedes usar Custom CSS para dar estilo a tu quiz más allá de los ajustes integrados.
Es útil cuando quieres ajustar al detalle el aspecto de los elementos del quiz o aplicar estilos que no están disponibles en el editor.
Cómo funciona
LanderLab te permite inyectar CSS personalizado en tu flujo. Tu CSS se limita automáticamente al contenedor raíz .ll-quiz, así que los estilos solo afectan a tu quiz y nunca se filtran al resto de la página.
Dónde añadir el CSS
En el editor de LanderLab, abre Settings → Custom CSS y pega ahí tus reglas. Todos los selectores que escribas ya están dentro de .ll-quiz, así que no necesitas añadir ningún prefijo.
No puedes dar estilo al propio elemento raíz .ll-quiz (por ejemplo, background o font-family). Esas propiedades las controla el motor de temas. Apunta a los elementos hijos en su lugar.
Reglas de alcance
Todo tu CSS vive dentro de .ll-quiz. Las variables del tema (como --colorPrimary) son de solo lectura: las define el motor de temas y no se pueden sobrescribir. Para cambiar el aspecto de algo, escribe reglas CSS normales que apunten a los selectores que se describen en esta guía.
✓ Haz esto
✗ No hagas esto: las variables son de solo lectura
Referencia de selectores
Usa estos selectores para apuntar a los elementos que quieres modificar. Todos están limitados automáticamente a .ll-quiz.
Diseño y estructura
.ll-quiz-step
Todos los pasos (visibles y ocultos)
.ll-quiz-step[data-active-step=“true”]
Solo el paso visible en ese momento
.ll-quiz-header
Zona fija de la cabecera superior
.ll-quiz-footer
Zona fija del pie inferior
.ll-quiz-block
Cualquier bloque, de cualquier tipo
.ll-quiz-block—[type]
Un tipo de bloque concreto (por ejemplo, --text-field)
Campos de entrada
.ll-quiz-block__input
Todos los campos de texto y desplegables
.ll-quiz-block__input-wrapper
Div contenedor que envuelve los campos
.ll-quiz-block__label
Etiquetas de los campos
.ll-quiz-block__decorator
Iconos o texto de prefijo y sufijo
Botones
.ll-quiz-continue-button
Botón Continue
.ll-quiz-previous-button
Botón Previous (atrás)
.ll-quiz-submit-button
Botón Submit
.ll-quiz-default-button
Botón de acción genérico
.ll-quiz-button-text
Texto dentro de cualquier botón
.ll-quiz-button-description
Subtítulo dentro de cualquier botón
Bloques de opciones
.ll-choice-option
Una opción de opción múltiple
.ll-choice-option:has(input:checked)
Una opción seleccionada
.ll-choice-option__text
Texto dentro de una opción
.ll-img-choice-option
Tarjeta de una opción con imagen
.ll-img-choice-option:has(input:checked)
Tarjeta con imagen seleccionada
.ll-choice-label
Etiqueta del grupo de un bloque de opciones
Progreso y mensajes
.ll-quiz-progress__fill
La parte rellena de la barra
.ll-quiz-header__progress-fill
Relleno de la barra de progreso de la cabecera
.ll-quiz-block—has-error
Un bloque que no ha superado la validación
.ll-quiz-block-error
El texto del mensaje de error
.ll-quiz-variable
Variables dinámicas dentro del texto (por ejemplo, el nombre)
Campos de entrada
Todos los campos de texto, desplegables, áreas de texto y similares comparten la misma estructura de clases. Apunta a .ll-quiz-block__input para darles estilo a todos a la vez, o filtra por tipo de bloque para controlarlos uno a uno.
Da estilo a todos los campos de entrada
CSS
Apunta a un bloque concreto por su ID
Encontrarás el ID del bloque en la URL cuando lo editas en LanderLab (por ejemplo, text-field-abc123).
Da estilo a los prefijos y sufijos
Etiquetas
Botones
En LanderLab los botones se renderizan como elementos <a>, no como <button>. Usa el selector específico de cada tipo de botón o apunta a todos a la vez con una clase compartida.
Botón Continue
Botón Previous
Botón Submit
Da estilo a todos los botones a la vez
Subtítulo del botón (descripción)
Bloques de opciones
Puedes dar estilo a las opciones de los bloques de opción múltiple y de elección con imágenes en sus estados normal, hover y seleccionado.
Da estilo a las opciones
Tarjetas de elección con imágenes
Oculta el icono de radio o casilla
Barras de progreso
Hay dos ubicaciones para la barra de progreso: una dentro de los pasos y otra en la cabecera. Puedes darles estilo por separado o a la vez.
Barra de progreso dentro del paso
Barra de progreso de la cabecera
Diseño adaptable
LanderLab usa container queries de CSS, no media queries. Usa siempre la sintaxis de contenedor que ves abajo: las consultas @media estándar no funcionan como esperas dentro del contenedor del quiz.
El punto de corte es 490px: todo lo que sea más ancho se trata como escritorio y todo lo que sea más estrecho, como móvil.
Sintaxis de las container queries
No uses media queries @media
Usa @container quiz-container (...) en lugar de @media (...). El quiz es un componente contenedor y las media queries no reflejan su ancho real.
Estados y validación
Cuando un campo no supera la validación, recibe la clase .ll-quiz-block--has-error. Úsala para dar a los estados de error un estilo coherente con tu diseño.
Estilo de los errores
Variables de texto dinámicas
Los bloques de texto pueden incluir variables en vivo como {{firstName}} que se actualizan mientras el usuario escribe. Se renderizan como elementos span con la clase .ll-quiz-variable.
Ejemplos completos
Pega cualquiera de estos ejemplos en tu panel Custom CSS para empezar rápidamente.
Ejemplo 1: tema minimalista y limpio
Ejemplo 2: tema redondeado y colorido
Ejemplo 3: ajustes de diseño pensados para móvil
Lista de clases por tipo de bloque
Usa estos modificadores sobre .ll-quiz-block para apuntar a tipos de bloque concretos.