Pregunta de entrevista para Desarrollador frontend

¿Cómo cargas fuentes web sin provocar desplazamiento de layout ni ocultar el texto?

Qué evalúa el entrevistador, cómo estructurar tu respuesta y un ejemplo hablado que puedes adaptar.

Respuesta rápida

Aloja la fuente tú mismo, precarga el único archivo necesario para el primer pintado y usa font display swap para que el texto sea visible de inmediato. Luego elimina el desplazamiento haciendo coincidir las métricas de la fuente de respaldo con size adjust, ascent override y descent override, o usando una fuente de respaldo generada. Reduce la fuente al subconjunto de caracteres que de verdad usas, entrega solo woff2 y evita cargar varios pesos cuando una fuente variable cubre el rango.

Por qué lo preguntan los entrevistadores

Las fuentes son la causa más común de desplazamiento de layout y una de las victorias más fáciles en una revisión de rendimiento. El entrevistador comprueba si sabes por qué ocurre el desplazamiento, que es un desajuste de métricas entre la fuente de respaldo y la real, en vez de solo recitar font display swap. Saber de alojamiento propio y precarga también demuestra que entiendes que un origen de terceros cuesta una conexión extra antes siquiera de descubrir la fuente.

Cómo estructurar tu respuesta

  • Explica por qué ocurre el desplazamiento: las métricas de respaldo difieren de las de la fuente real.
  • Da la estrategia de carga: alojamiento propio, precarga, woff2, subconjunto.
  • Cubre la compensación del valor de display entre texto en blanco y un cambio brusco.
  • Termina con las sobrescrituras de métricas para que el cambio pase desapercibido.

Ejemplo de respuesta

Ejemplo hablado, en primera persona

El desplazamiento ocurre porque la fuente de respaldo tiene métricas distintas, así que cuando llega la fuente real cada línea se recompone y todo lo que hay debajo se mueve. Así que hay dos problemas que arreglar: cuándo aparece el texto y cuánto se mueve cuando cambia. Para lo primero, alojo la fuente yo mismo, precargo solo el archivo necesario para la vista inicial y uso font display swap para que nadie se quede mirando un bloque de texto en blanco con una conexión lenta. Para lo segundo, sobrescribo las métricas de la fuente de respaldo, size adjust más ascent y descent override sobre una fuente local de respaldo, para que ocupe casi exactamente el mismo espacio y el cambio apenas se note. Más allá de eso es higiene: solo woff2, subconjunto del conjunto de caracteres realmente usado y una fuente variable en lugar de cuatro pesos estáticos. En un sitio que traía tres pesos desde un origen de terceros, pasar a una fuente variable propia y con subconjunto quitó unos 180 kilobytes y llevó el CLS de aproximadamente 0,18 a menos de 0,02.

¿Tienes esta entrevista a la vuelta de la esquina? GhostPilot escucha tu llamada en vivo, detecta la pregunta en cuanto la hacen y pone una respuesta estructurada en tu pantalla en tiempo real. Pruébalo en tu próxima entrevista de práctica, o coge un Session Pass de $29, sin suscripción, para la de verdad.

Mira cómo funciona

Preguntas de seguimiento que puedes esperar

  • ¿Cuál es la diferencia entre font display swap, optional y fallback?
  • ¿Cómo medirías el desplazamiento de layout que está causando una fuente?
  • ¿Cuándo es una pila de fuentes del sistema la mejor respuesta?

Más preguntas para Desarrollador frontend

Tu entrevistador hará su propia versión de esta. Pega la descripción real del puesto en el Question Predictor gratuito y obtén las 20 preguntas que ese puesto tiene más probabilidades de hacerte, con lo que cada una busca en realidad.

Predecir mis preguntas

Ensaya las preguntas difíciles antes de que te las hagan

Practica con un copiloto en vivo y entra preparado. Un Session Pass de $29 te lleva a través de la entrevista sin suscripción y sin ataduras.

Consigue GhostPilot