Patrones de Métricas web
Esta colección incluye patrones que suelen ser difíciles de implementar sin afectar las puntuaciones de Métricas web esenciales. Usa el código de estos ejemplos para asegurarte de que tus proyectos vayan por buen camino.
- Tiempo de bloqueo total (TBT)
- Comienza a medir las Métricas web
- Las formas más eficaces de mejorar las Métricas web esenciales
- Web Vitals
- Compara la capacidad de LLM con el resumen
- Cómo se definieron los umbrales de las métricas de Core Web Vitals
- Flujos de trabajo de las Métricas web esenciales con las herramientas de Google
- Optimiza el procesamiento de imagen con contenido más grande
- Cómo diagnosticar interacciones lentas en el lab de forma manual
- Referencia
- Memoria caché atrás/adelante
- El anidamiento de CSS mejora con CSSNestedDeclarations
- First Input Delay (FID)
- Depura el rendimiento en el campo
- Correlaciona las Métricas web esenciales y los ingresos publicitarios con las herramientas de Google
- Mejora el rendimiento y la UX de la IA del cliente
- Cómo realizar comparativas del rendimiento de la propiedad @ de CSS
- Es hora de realizar una carga diferida de iframes fuera de pantalla.
- El protocolo de envío web
- Cómo compilar varias apps web progresivas en el mismo dominio
- Cómo maneja Chrome las actualizaciones del manifiesto de la app web
- Permite la reutilización de llaves de acceso en tus sitios con las solicitudes de origen relacionadas
- Carga diferida de imágenes a nivel del navegador para la Web
- Métricas personalizadas
- Mide y depura el rendimiento con Google Analytics 4 y BigQuery
- Prácticas recomendadas sobre permisos web
- Prácticas recomendadas para los avisos de cookies
- Personaliza las notificaciones multimedia y los controles de reproducción con la API de Media Session
- Cómo usar tabindex
- Busque interacciones lentas en el campo
- Tiempo hasta el primer byte (TTFB)
- Ingeniería práctica de instrucciones para LLM más pequeños
- Optimiza las tareas largas
- Optimiza el tiempo hasta el primer byte
- Interacción a la siguiente pintura (INP)
- Colores de CSS que dependen del esquema de colores con claro-oscuro()
- Patrones de rendimiento de WebAssembly para aplicaciones web
- Diseños de cuadrícula animados de CSS
- Disfruta del juego del dinosaurio de Chrome con tu control de mando
- El atributo inerte
- Conoce al equipo de IA de Web.dev
- ¿Qué es la inteligencia artificial?
- Actualiza la búsqueda en tu sitio: Respuestas contextuales con la IA generativa
- IA y ética
- Determina el proveedor de llaves de acceso con AAGUID
- Compilación y optimización de Wasm con Binaryen
- El componente web <model-viewer>
- Capturar audio y video en HTML5
- Análisis detallado de user Verification
- ¿Por qué los datos de CrUX son diferentes de mis datos de RUM?
- Accesibilidad para desarrolladores web
- Cargar JavaScript de terceros
- Largest Contentful Paint (LCP)
- Impedir la creación de una llave de acceso nueva si ya existe una
- Trabaja con IndexedDB
- 5 fragmentos de CSS que todo desarrollador front-end debe conocer en 2024
- ¿Cuáles son las partes de una URL?
- Análisis detallado de las credenciales detectables
- Rendimiento del procesamiento
- Optimiza la codificación y el tamaño de transferencia de los recursos de texto
- Precargar módulos
- OffscreenCanvas: Acelera tus operaciones de lienzo con un trabajador web
- First Contentful Paint (FCP)
- Redes de distribución de contenidos (CDN)
- ¿Qué se necesita para una buena experiencia de salida?
- Tiempo de carga (TTI)
- Optimiza la carga de recursos con la API de Fetch Priority
- Seudoclases :user-valid y :user-invalid
- Optimiza las Métricas web esenciales para los responsables de tomar decisiones empresariales
- Los matices de las strings de codificación en Base64 en JavaScript
- Subcuadrícula CSS
- Carga eficaz de anuncios sin afectar la velocidad de la página
- Cuatro tipos comunes de cobertura de código
- Para probar o no, desde una perspectiva técnica
- Definición de casos de prueba y prioridades
- Métricas de rendimiento centradas en el usuario
- Precargar imágenes responsivas
- Adaptar la tipografía a las preferencias del usuario con CSS
- ¿Pirámide o cangrejo? Encuentra una estrategia de pruebas que se adapte
- Tres tipos comunes de automatización de pruebas
- Eliminación de descargas innecesarias
- ¿Qué es WebAssembly y de dónde proviene?
- Cómo compilar mkbitmap en WebAssembly
- El sistema de archivos privados de origen
- Aloja datos de usuarios de forma segura en aplicaciones web modernas
- Implementa AVIF para sitios web más responsivos
- Optimiza la interacción para el siguiente procesamiento de imagen
- Funciones de Baseline que puedes usar en la actualidad
- De qué manera los tamaños grandes de DOM afectan la interactividad y qué puedes hacer al respecto
- Cómo optimizar el retraso de entrada
- Evaluación de secuencias de comandos y tareas largas
- Renderización de HTML e interactividad del cliente
- Cómo usar la extensión de Métricas web para depurar problemas de Métricas web esenciales
- Cómo optimizar el cambio de diseño acumulado
- Cumulative Layout Shift (CLS)
- Crea experiencias de WordPress en el navegador con WordPress Playground y WebAssembly
- WebAssembly ofrece nuevas funciones para desarrolladores
- AWP en tiendas de aplicaciones
- ¿Qué son los mapas de origen?
- 6 fragmentos de CSS que todo desarrollador front-end debe conocer en 2023
- Funciones trigonométricas en CSS
- Realiza operaciones eficientes por fotograma en video con requestVideoFrameCallback()
- Momento destacado de la comunidad de GDE: Lars Knudsen
- Nuevos patrones para apps de música
- Sugerencia de CSS rápida Texto gradiente animado
- Compilando Chrometober
- Compila un componente de información sobre la herramienta
- Accede con una llave de acceso mediante el autocompletado del formulario
- Crea una llave de acceso para los accesos sin contraseña
- Cómo compilar un componente de botón de acción flotante (BAF)
- Prácticas recomendadas para fuentes
- Sugerencia de CSS rápida Cargador animado
- Cómo probar el contraste de colores de un diseño web
- Destacado de la comunidad de GDE: Alba Silvente Fuentes
- Cómo crear la navegación principal para un sitio web
- ¿Es :modal?
- Estilo de la lista de creatividades
- Prácticas recomendadas para las etiquetas y los administradores de etiquetas
- Construir una ilusión de cuadrícula torcida
- Cómo Nordhealth usa propiedades personalizadas en componentes web
- Control más detallado sobre las transformaciones de CSS con propiedades de transformación individuales
- Animaciones de bordes CSS
- Cómo la BBC está implementando HSTS para mejorar la seguridad y el rendimiento.
- Por qué los datos de lab y de campo pueden ser diferentes (y qué hacer al respecto)
- Una situación beneficiosa para todos
- El fin de Internet Explorer
- Dile adiós a HTML5Rocks
- Recetas de galletas propias
- Sincroniza la reproducción de audio y video en la Web
- Usar gradientes cónicos para crear un borde frío
- La diferencia entre las bibliotecas y los frameworks de JavaScript
- Elige un framework o una biblioteca de JavaScript
- Implementa el manejo de errores cuando se usa la API de recuperación
- Una API para fuentes web rápidas y atractivas
- Guía para desarrolladores de frontend sobre la terminal
- GOV.UK descarta jQuery desde su frontend.
- Cómo compilar un componente de botón
- No te comprometas con el escáner de precarga del navegador
- Prácticas recomendadas para medir las Métricas web en el campo
- Ayudamos a reducir la brecha
- Cómo encontrar el coraje y la inspiración en la comunidad de desarrolladores
- Fuentes variables en la vida real
- Crea rápidamente gradientes de CSS atractivos con el Creador de gradientes de CSS
- Análisis detallado de los principales problemas de los desarrolladores web
- Crea una imagen perfecta de tu sitio con images.tooling.report
- Alcance de las variables globales y locales
- Cómo compilar un componente de diálogo
- Cómo depurar errores de reproducción de contenido multimedia en la Web
- Momento destacado de la comunidad de GDE: Nishu Goel
- Los efectos en el rendimiento de un exceso de carga diferida
- Cómo compilar un componente de barra de carga
- Guardar credenciales desde Formularios
- Chrome y Firefox pronto llegarán a la versión principal 100
- Cómo compilar un ícono de página adaptable
- Cómo dibujar a lienzo en Emscripten
- Actualiza la caché HTTP para mejorar la seguridad y la privacidad
- Elementos HTML adicionales
- Portabilidad de aplicaciones USB a la Web Parte 2: gPhoto2
- Registro de errores de red (NEL)
- Detección de funciones de WebAssembly
- Portabilidad de aplicaciones USB a la Web Parte 1: libusb
- Cómo compilar un componente de cambio de tema
- Incorporación de fragmentos de JavaScript en C++ con Emscripten
- AWP en Oculus Quest 2
- Diseño del edificio
- Calculadora de diseño
- Copia profunda en JavaScript con estructuradoClone
- Cómo compilar un componente de aviso
- UI Fund
- Cómo compilar un componente del menú del juego en 3D
- Hacia una métrica de fluidez de animación
- Novedades de PageSpeed Insights
- Todos los anuncios de Chrome Dev Summit 2021
- Flujos de usuarios de Lighthouse
- El recorrido de Photoshop hacia la Web
- Compila un componente de selección múltiple
- Cómo evaluar el rendimiento de carga en el campo con Navigation Timing y Resource Timing
- Manipulación segura de DOM con la API de Sanitizer
- Prácticas recomendadas para usar incorporaciones de terceros
- Cómo afectan las arquitecturas de SPA a las Métricas web esenciales
- Análisis detallado de los eventos de JavaScript
- Cómo crear paquetes de recursos que no son de JavaScript
- Cómo compilar un componente de botón dividido
- Uso de secuencias de comandos del módulo CSS para importar hojas de estilo
- Cómo compilar un componente de interruptor
- Encabezados de sugerencias de clientes para las funciones multimedia de preferencias de los usuarios
- Cómo compilar un componente de rutas de navegación
- Cómo usar subprocesos de WebAssembly desde C, C++ y Rust
- Frameworks de contenido multimedia
- AWP con transmisión sin conexión
- Encriptación de contenido multimedia
- Conceptos básicos de la transmisión de contenido multimedia
- Mejore su camino con los datos de campo de la actualización de la extensión de Métricas web
- Ajuste de tamaño de CSS para @font-face
- Cómo crear un esquema de colores
- Cómo usar AVIF para comprimir imágenes en tu sitio
- CSS para Métricas web
- Ya está disponible la nueva capacitación sobre apps web progresivas
- Excalidraw y Fugu: cómo mejorar los recorridos principales de los usuarios
- Módulos de ES en service workers
- Cómo compilar un componente de desplazamiento multimedia
- Optimización de las Métricas web con Lighthouse
- Personaliza la superposición de los controles de la ventana de la barra de título de tu AWP
- Mantén bajo control las secuencias de comandos de terceros
- Supera los obstáculos con la API de DataTransfer
- Completar formularios de OTP dentro de iframes de origen cruzado con la API de WebOTP
- Cómo crear animaciones de texto dividido
- Satisfacción de los desarrolladores web
- Cómo compilar un componente de configuración
- Cómo depurar cambios de diseño
- Ideas finales de un desarrollador web sobre miniapps
- Cómo programar la miniapp
- Componentes de la miniapp
- Aplicar los principios de programación de miniapps a un proyecto de ejemplo
- Miniproyectos de código abierto de app
- Estructura, ciclo de vida y paquetes del proyecto
- ¿Qué son H5 y QuickApp?
- Lenguaje de marcado, estilo, secuencia de comandos y actualización de miniapps
- Cómo compilar un componente de pestañas
- Solicita el aislamiento de rendimiento con el encabezado Origin-Agent-Cluster
- La propiedad aspect-ratio de CSS
- Prácticas recomendadas para carruseles
- Codelab: Compila un componente de navegación lateral
- Cómo compilar un componente de navegación lateral
- Centrar en CSS
- Codelab: Centrar en CSS
- Me encanta tu caché ❤️
- Publica, instala y envía JavaScript moderno para aplicaciones más rápidas
- Trabajadores de pintura entre navegadores y Houdini.how
- Codelab de prácticas recomendadas para el formulario de registro
- Automatiza auditorías con AutoWebPerf
- Codelab de prácticas recomendadas para el formulario de dirección
- Codelab de prácticas recomendadas para los formularios de pago
- Comunicación bidireccional con los service workers
- Guía de almacenamiento en caché imperativo
- Transmite actualizaciones a las páginas con service workers
- Descripción general de los trabajadores
- Inhabilita la aceleración del mouse para brindar una mejor experiencia de juego FPS
- Cómo crear un componente Historias
- Codelab: Compila un componente de historias
- Schemeful SameSite
- Carga diferida de CMS a nivel del navegador
- Codelab: Compila un servidor de notificaciones push
- Codelab: Compila un cliente de notificaciones push
- Descripción general de las notificaciones push
- Mide el uso sin conexión
- Ejemplos de animaciones de CSS de alto rendimiento
- Mejoras lógicas en el diseño con abreviaturas relativas de flujo
- ¿Por qué algunas animaciones son lentas?
- Cómo crear animaciones CSS de alto rendimiento
- Cómo manejar solicitudes de rango en un service worker
- Cómo controlar el desplazamiento lateral, la inclinación y el zoom de la cámara
- ¿Qué son las pruebas de origen de terceros?
- Fugas de memoria de la ventana separada
- Core Web Vitals
- Crea formas de imagen interesantes con la propiedad de ruta de recorte de CSS
- Viñetas personalizadas con marcador de CSS
- Cómo manejar información de pago opcional con un service worker
- Organización de transacciones de pago con un service worker
- Accesibilidad multimedia
- ARIA: ¿veneno o antídoto?
- Cómo depurar fugas de memoria en WebAssembly con Emscripten
- content-visibility: la nueva propiedad de CSS que mejora el rendimiento de su renderización
- Web en Android
- Cómo compilar una AWP en Google (parte 1)
- Supervisión del rendimiento con Lighthouse CI
- Diseño de la experiencia del usuario de las llaves de acceso en Cuentas de Google
- @property: Otorga superpoderes a las variables de CSS
- Cómo registrar una app de pagos basada en la Web
- Proporciona información de contacto y de envío desde una app de pagos de Android
- Descripción general de las apps de pago basadas en la Web
- Relación entre la velocidad del sitio y las métricas empresariales
- Cómo controlar las solicitudes de navegación
- Uso del informe de UX de Chrome para analizar el rendimiento en el campo
- Renderización perfecta de píxeles con devicePixelContentBox
- Resumen de web.dev EN VIVO
- Usar funciones de navegador multiplataforma para crear un formulario de acceso
- Herramientas para desarrolladores web que permiten depurar problemas de JavaScript en la Búsqueda de Google
- Crea experiencias de búsqueda resilientes con Workbox
- Agregar medios a una página web
- Mide el rendimiento con el modelo RAIL
- Acelera la navegación en React con Quicklink
- Reordenamiento de contenido
- Mejoras de la API de Web Animations en Chromium 84
- Ciclo de una transacción de pago
- Potencia las apps de pago con pagos web
- Más opciones de fuentes variables para la fuente system-ui de macOS en Chromium 83
- Cómo generar perfiles de apps de audio web en Chrome
- Rendimiento mejorado de carga de páginas de Next.js y Gatsby con fragmentación detallada
- Cómo hacer que tu sitio web esté "aislado de origen cruzado" con COOP y COEP
- Supervisa el uso total de memoria de tu página web con MeasureUserAgentSpecificMemory()
- Blog de ingeniería de web.dev n.o 1: Cómo creamos el sitio y usamos componentes web
- Asegúrese de que su sitio web esté disponible y sea utilizable para todos durante el brote de COVID-19
- Diseño adaptable accesible
- Evita los cambios de diseño y los destellos de texto invisible (FOIT) precargando fuentes opcionales.
- Cómo distribuir intercambios HTTP firmados (SXG) con nginx
- Cómo configurar intercambios HTTP firmados (SXG) con nginx
- Optimiza las imágenes de fondo de CSS con consultas de medios
- Corregir de manera multidisciplinaria la velocidad del sitio web
- Ajuste de desplazamiento después de cambiar el diseño
- Cómo configurar intercambios firmados con Web Packager
- Posicionamiento de objetos virtuales en vistas del mundo real
- La realidad virtual llega a la Web (parte II)
- Realidad aumentada: Quizás ya la conozcas
- Avance del ecosistema del framework web
- Integra las AWP en las IUs de uso compartido integradas con Workbox
- Se mejoró el descarte de páginas en XMLHttpRequest() síncrono
- Cómo ejecutar subprocesos en la Web con trabajadores del módulo
- Evoluciones de las herramientas de velocidad: aspectos destacados de Chrome Developer Summit 2019
- Carga adaptable: Mejora el rendimiento de la Web en dispositivos lentos
- Comentarios de la encuesta de optimización de imágenes del verano de 2019
- Compila un servidor de notificaciones push
- Carga previa de la ruta en Next.js
- División de código con importaciones dinámicas en Next.js
- Realiza la integración con la IU de uso compartido del SO mediante la API de Web Share
- Rendimiento como predeterminado con Next.js
- Cómo AMP puede garantizar la rapidez de tu app de Next.js
- La realidad virtual llega a la Web
- Conceptos básicos sobre las cookies
- Los anuncios rápidos son importantes
- Usa notificaciones push para atraer a los usuarios y volver a atraerlos
- Comienza a usar la API de Notifications
- Cómo usar un Service Worker para administrar notificaciones
- Cómo corregir la inestabilidad del diseño
- Técnicas para que una app web se cargue rápido, incluso en teléfonos de gama media
- Propiedades personalizadas más inteligentes con la nueva API de Houdini
- Dos formas de precarga: etiquetas <link> y encabezados HTTP
- Precarga recursos para acelerar la navegación en el futuro
- Más allá de las imágenes con videos básicos para la Web
- Cómo agregar un ícono táctil de Apple a tu app web progresiva
- Ready Player Web
- Reducir el tamaño de la fuente web
- Optimiza la carga y el procesamiento de WebFont
- Crea una app web progresiva con la CLI de Angular
- Carga eficientemente JavaScript de terceros
- Usa CDN de imágenes para optimizar las imágenes
- Identifica JavaScript de terceros lento
- Rendimiento de JavaScript de terceros
- Controles de formularios con mayor capacidad
- Optimiza JavaScript de terceros
- Establece conexiones de red con anticipación para mejorar la velocidad percibida de la página.
- Virtualiza listas grandes con el CDK de Angular
- Estrategias de precarga de rutas en Angular
- Optimiza la detección de cambios de Angular
- Navegación web más rápida con carga previa predictiva
- Adapta el video a la publicación de imágenes en función de la calidad de la red
- Audita la accesibilidad de tu app de Angular con un codificador de código
- Presupuestos de rendimiento con la CLI de Angular
- Cómo almacenar previamente en caché con el service worker de Angular
- División de código a nivel de la ruta en Angular
- Primeros pasos: Optimiza una aplicación de Angular
- Sugerencias principales para el rendimiento de la Web
- Componentes web: el ingrediente secreto que ayuda a potenciar la Web
- Usa Lighthouse para los presupuestos de rendimiento
- El valor de la velocidad
- Actualizaciones de las API de pagos web
- Instalación de la barra de direcciones para apps web progresivas en el escritorio
- ¿Cómo puede el rendimiento mejorar las conversiones?
- Mentalidad de service worker
- ¿Cómo puedo notificar a los usuarios que mi AWP se puede instalar?
- Políticas de imágenes para tiempos de carga rápidos y mucho más
- Extraer e intercalar CSS crítico con Critical
- ¿Las tareas largas de JavaScript retrasan su tiempo de carga?
- Extraer CSS crítico
- Velocidad a gran escala: ¿cuáles son las novedades sobre el rendimiento web?
- Presentamos PROXX
- Búsqueda visual con el kit de herramientas de percepción web
- Entrega adaptable según la calidad de la red
- Reduce y comprime las cargas útiles de red con brotli
- web.dev en I/O 2019
- ¿Cómo se mide la velocidad?
- ¿Cómo mantener la rapidez?
- ¿Qué es la velocidad?
- Procesamiento previo de rutas con reacción-snap
- Primeros pasos: Optimiza tu app de React
- División de código con React.lazy y Suspense
- Almacenamiento previo en caché en la creación de una app de React con Workbox
- Auditoría de accesibilidad con react-axe y eslint-plugin-jsx-a11y
- Codelab: Carga previamente recursos críticos para mejorar la velocidad de carga
- Aplaza el CSS que no sea crítico
- La confianza es buena y la observación es mejor: Intersection Observer v2
- Hojas de estilo para construir
- Renderización en la Web
- Usa bundlesize con Travis CI
- Incorporar presupuestos de rendimiento en el proceso de compilación
- Configura presupuestos de rendimiento con webpack
- Cómo usar el bot de Lighthouse para establecer un presupuesto de rendimiento
- Emscripten y npm
- ¿Tu app está instalada? getInstalledRelatedApps() te lo dirá.
- Publica código moderno en navegadores actualizados para que las páginas se carguen más rápido
- Adapta la app a usuarios con Client Hints
- ¿Qué es la accesibilidad?
- Aspectos básicos del acceso al teclado
- Semántica y lectores de pantalla
- Usa código HTML semántico para lograr una implementación óptima del teclado.
- Enfoque de estilo
- Evita el destello de texto invisible
- Reduce las cargas útiles de JavaScript con la división de código
- Cómo especificar varios anchos de ranura
- Publica código moderno en navegadores actualizados para que las páginas se carguen más rápido
- ¿Qué son los ataques de seguridad?
- Cómo crear imágenes WebP con la línea de comandos
- Introducción a los presupuestos de rendimiento
- Quita el código que no se use
- Zona de pruebas del navegador
- Almacenamiento previo en caché con Workbox
- Publica imágenes responsivas
- Evita solicitudes de red innecesarias con la caché HTTP
- Política del mismo origen y solicitudes de recuperación
- Cómo usar imágenes WebP
- Cómo trabajar con service workers
- Corrige errores 404 engañosos
- Configura el comportamiento del almacenamiento en caché de HTTP
- Cómo usar descriptores de densidad
- Reemplazar los GIF animados por videos para que las páginas se carguen más rápido
- cómo funciona la búsqueda,
- Política del mismo origen
- Almacenamiento en caché del entorno de ejecución con Workbox
- Reduce las cargas útiles de JavaScript con la división de código
- Identifica los recursos cargados desde la red
- Cómo usar Imagemin con webpack
- ¡La seguridad no debería ser tan aterradora!
- Explore el panel Network de Herramientas para desarrolladores
- Cómo usar Imagemin para comprimir imágenes
- Publica imágenes con las dimensiones correctas
- Reemplazar GIF por video
- Cómo medir la optimización para motores de búsqueda con Lighthouse
- Tu primer presupuesto de rendimiento
- Dirección artística
- Aplica la carga instantánea con el patrón PRPL
- Quita el código que no se use
- Política del mismo origen y iframe
- Precarga los recursos críticos para mejorar la velocidad de carga
- Descubre oportunidades de rendimiento con Lighthouse
- Hay subprocesos de WebAssembly listos para probar en Chrome 70
- Conversión de medios
- Cómo funciona la API de Payment Request
- Descripción general de los pagos web
- Cómo funciona el ecosistema de pagos
- Elige el nivel correcto de compresión
- Extiende el navegador con WebAssembly
- Web Performance Easy: Google I/O edición 2018
- La embinada de Emscripten
- Reglas y recomendaciones de PageSpeed
- Próximos pasos
- Auditoría del rendimiento
- Comparte los resultados
- Utiliza herramientas para medir el rendimiento
- Trabajo previo
- Verificar la seguridad del sitio
- Desplazamiento bien controlado con Snap de desplazamiento de CSS
- Reduce las cargas útiles de JavaScript con la eliminación de código no utilizado
- Te damos la bienvenida a la Web envolvente
- Reduce y comprime las cargas útiles de red con gzip
- Precarga fuentes web para mejorar la velocidad de carga
- Carga módulos de WebAssembly de manera eficiente
- Verificación de la detección de atributos de la API de Credential Management
- Escribe una biblioteca de C a Wasm
- Cómo pensar las herramientas de velocidad
- Webpack
- Conclusión del Webpack
- Aprovechar el almacenamiento en caché a largo plazo
- Reduce el tamaño del frontend
- Supervisa y analiza la app
- Optimización de inicio de JavaScript
- API de Cache: Guía rápida
- Componentes de HowTo: Casilla de verificación para instructivos
- Grabación de video del usuario
- Reproducción rápida con precarga de audio y video
- Componentes de construcción
- Elementos personalizados v1: Componentes web reutilizables
- Prácticas recomendadas para los elementos personalizados
- Efectos en tiempo real para imágenes y videos
- Accesibilidad para los equipos
- Tasa de bits
- Cómo preparar archivos multimedia para la Web
- Solución
- ¿Qué es una experiencia multimedia?
- Contenedores y códecs
- Conceptos básicos de las aplicaciones multimedia
- Prácticas recomendadas para conservar el estado de la aplicación con IndexedDB
- WebAPK en Android
- Reproducción de videos web para dispositivos móviles
- Componentes de HowTo: Pestañas de instructivos
- Componentes de HowTo: información sobre la herramienta
- Descripción general de los componentes de HowTo
- Cómo informar errores y problemas habituales
- Cómo revisar la accesibilidad
- Extensiones de fuentes de medios
- Componentes web v1: la nueva generación
- Registro de service worker
- La API de Credential Management
- Usuarios que acceden
- Funciones asíncronas: hacer promesas amigables
- Introducción a ARIA
- Árbol de accesibilidad
- Alternativas de texto para imágenes
- Semántica y navegación por el contenido
- Cuestiones de orden del DOM
- Cómo ocultar y actualizar el contenido