Skip to main content
Validación HTML

Valor incorrecto “X” para el atributo “accept” en el elemento “input”: Se esperaba un carácter de token o “/“ pero se encontró “,” en su lugar.

Acerca de este problema HTML

El atributo accept proporciona a los navegadores una pista sobre qué tipos de archivos debería poder seleccionar el usuario a través del diálogo selector de archivos. Aunque los navegadores pueden seguir permitiendo que los usuarios seleccionen otros tipos de archivos, el atributo ayuda a filtrar el selector de archivos para mostrar primero los archivos relevantes, mejorando la experiencia del usuario.

El validador de W3C reporta este error cuando encuentra tokens en el atributo accept que no se ajustan al formato esperado. El valor del atributo se analiza como un conjunto de tokens separados por comas, y cada token debe ser uno de los siguientes:

  • Un tipo MIME válido como application/pdf, text/plain, o image/png (el carácter / que separa el tipo y subtipo es obligatorio).
  • Una extensión de archivo que comience con un punto, como .pdf, .docx, o .jpg.
  • Uno de tres tipos MIME comodín: audio/*, video/*, o image/*.

Los errores comunes que desencadenan este error incluyen usar extensiones de archivo simples sin el punto inicial (por ejemplo, pdf en lugar de .pdf), usar palabras arbitrarias que no son tipos MIME válidos, o incluir espacios de manera que se crean tokens mal formados. La especificación HTML (WHATWG) define reglas estrictas para cómo se analizan estos tokens, y violarlas produce un error de validación.

Hacer bien este atributo importa por varias razones. Primero, un atributo accept especificado correctamente ayuda a los usuarios al prefiltrar el selector de archivos, para que no tengan que buscar entre archivos no relacionados. Segundo, las tecnologías de asistencia pueden usar este atributo para comunicar los tipos de archivos aceptados a los usuarios. Tercero, algunos navegadores pueden ignorar silenciosamente un valor accept mal formado por completo, eliminando el comportamiento de filtrado útil que pretendías.

Para corregir el problema, revisa cada token en tu atributo accept y asegúrate de que coincida con uno de los tres formatos válidos listados arriba. Si no estás seguro del tipo MIME correcto para un formato de archivo, consulta el registro de tipos de medios de IANA. En caso de duda, las extensiones de archivo con prefijo de punto (como .pdf o .docx) son a menudo más simples y legibles.

Ejemplos

Incorrecto: palabras sueltas sin puntos o formato de tipo MIME

<input type="file" name="document" accept="doc, docx, pdf">

Los tokens doc, docx, y pdf no son tipos MIME válidos (sin /) ni extensiones de archivo válidas (sin . inicial), por lo que el validador los rechaza.

Incorrecto: espacios creando tokens mal formados

<input type="file" name="photo" accept="image/png, image/jpeg">

Aunque la mayoría de navegadores manejan los espacios después de las comas de manera elegante, el validador puede marcar esto dependiendo del análisis. Es más seguro evitar espacios o mantenerlos mínimos.

Correcto: usando extensiones de archivo con prefijo de punto

<input type="file" name="document" accept=".doc,.docx,.pdf">

Correcto: usando tipos MIME válidos

<input type="file" name="document" accept="application/msword,application/vnd.openxmlformats-officedocument.wordprocessingml.document,application/pdf">

Correcto: mezclando tipos MIME, extensiones y comodines

<input type="file" name="media" accept="image/*,.pdf,video/mp4">

Esto acepta todos los tipos de imagen, archivos PDF y vídeos MP4. Mezclar formatos es perfectamente válido siempre que cada token se ajuste individualmente a la especificación.

Correcto: usando tipos MIME comodín para categorías amplias

<input type="file" name="photo" accept="image/*">

Esto permite al usuario seleccionar cualquier archivo de imagen, independientemente del formato específico.

Encuentra problemas como este automáticamente

Rocket Validator escanea miles de páginas en segundos, detectando problemas de HTML en todo tu sitio web.

Ayúdanos a mejorar nuestras guías

¿Te ha sido útil esta guía?

¿Listo para validar tus sitios?
Inicia tu prueba gratuita hoy.