He visto diseños de navegación css hechos principalmente a través de ul
y li
listas para la estructura de pestañas. ¿Cuál es la razón detrás de esto?. ¿Cuál es la desventaja de tales sitios si css de alguna manera está deshabilitado?¿Cuál es la razón detrás de usar listas UL Li para dibujar barras de navegación?
Respuesta
marcado semántico tiene varias razones, por ejemplo:
- lectores de pantalla pueden acceder al sitio con mayor facilidad
- Google Bot puede rastrear el sitio con mayor facilidad
Este enlace da más detalles sobre el tema: Semantic HTML. Además, es ALTAMENTE poco probable que alguien tenga CSS deshabilitado. En mi opinión, no hay absolutamente ninguna necesidad de proporcionar respaldo para ese caso, la navegación aún sería accesible de todos modos.
Creo que es solo un patrón que funcionó bien cuando se desarrolló (en todos los navegadores), por lo que fue documentado en libros de CSS y utilizado por mucha gente. No tiene que cambiar demasiado (ul { list-style: none;}
y li { display: inline; }
), por lo que es fácil de agregar. Y si desactivas CSS en tu navegador, obtienes una versión más fea que funciona también.
No hay ninguna razón concreta, es decir, no existe un libro de reglas que indique que DEBE hacer enlaces de navegación usando una lista UL LI.
Sin embargo, por las 2 razones ya listas en los comentarios, y las recomendaciones del W3C sobre la estructura del documento, el diseño y la semántica html, ** RECOMIENDA ** que los enlaces de navegación se realicen de esa manera.
Es como cumplir con los patrones en el código, mediante el uso de estructuras y métodos que cumplen con los estándares, la siguiente persona que tiene que mantener ese sitio después de que pueda verlo y decir, ahh ... Veo qué está pasando aquí.
En cuanto a los lectores de pantalla, (como se ha mencionado anteriormente) también pueden hacer un análisis similar en el diseño del documento, y así decidir qué elementos son importantes para un usuario con discapacidad visual.
La navegación es un menú, en el html anterior había una etiqueta, desaprobada en html4 (http://www.w3.org/TR/html401/struct/lists.html#h-10.4) porque el menú y los renders ul. lo mismo.
Ahora el menú de navegación en html5 debe estar incluido en la etiqueta semántica.
- 1. Listas válidas dentro de listas - ul inside ul
- 2. ¿Las barras de navegación siempre deben implementarse como listas?
- 3. ¿Cuál es la razón detrás de Object.clone() está protegido
- 4. ¿Cuál es la razón detrás de cbegin/cend?
- 5. Dibujar flecha entre listas
- 6. html ul li - tabs
- 7. ul li flotado con
- 8. ¿Cuál es la razón detrás de usar def y defn en lugar de simplemente definir?
- 9. ¿Cuál es la razón detrás de la sintaxis elegida para declarar amigos de plantilla?
- 10. Lista de selección de JQuery ul li
- 11. ¿Cuál es la razón principal para usar Mongoose ORM?
- 12. La razón para usar role = "list" y role = "listitem"?
- 13. ¿Por qué se acepta el uso de una estructura UL, LI en las listas de menú?
- 14. ¿Cuál es una buena razón para usar vistas de SQL?
- 15. Cómo alinear centralmente un flotador: menú de navegación izquierdo ul/li con css?
- 16. li ul li es demasiado larga, la línea se envuelve pero no se indention
- 17. HTML5 UL LI se pueden arrastrar
- 18. ANDROID: ¿Cuál es la idea principal detrás de usar strings.xml?
- 19. Java: ¿Cuál es la razón detrás de que System.out.println() sea tan lento?
- 20. Orchard Query List Rendering - Eliminar ul li
- 21. ¿Cómo contar li que no tiene ul?
- 22. ¿Cuál es la razón detrás de la diferencia en los resultados?
- 23. CS0133 "La expresión asignada a 'identificador' debe ser constante" - ¿cuál es la razón detrás de eso?
- 24. obtener toda li dentro ul usando jQuery
- 25. CSS ul li: Evitar bordes dobles
- 26. ¿Cuál es la magia detrás de Lightstreamer?
- 27. ¿Cuál es la razón detrás de esta gran diferencia de rendimiento en .Net 4
- 28. agregar li al medio de la ul (jquery)
- 29. Crea elementos ul y li en javascript.
- 30. ¿Cuál es la razón detrás de JSLint diciendo que hay "demasiadas declaraciones var"
Obtendrá una "lista" de enlaces, que es lo que se supone que es. –
Accesibilidad para, por ejemplo, lectores de pantalla e incluso respaldo para navegadores que no sean css. Mantener la semántica en HTML <5. – DanielB
@DanielB No recibí su comentario. Cómo se realiza el respaldo para los navegadores que no son CSS. Al navegar a través de ulil –