2011-07-07 11 views
9

Estaba jugando con Firebug y editando el archivo CSS de Gmail, y quería editar un botón, pero la identificación div para ese botón era :rj. Estoy bastante seguro de que CSS no permite los puntos en , y especialmente comenzando como nombres de ID y clase. Así que supongo que este es un truco avanzado. No estoy seguro de si es consistente como esto para cada usuario, pero FWIW, la ID era para el botón "Buscar correo" en la parte superior de la página.Id. Loco de Google y convenciones de nomenclatura de clase

¿Alguien sabe lo que están haciendo y cómo lo están haciendo?

+0

El estándar HTML permite dos puntos en los valores de id, pero el primer carácter de una identificación debe ser una letra. –

+0

Una mejor pregunta tal vez es * ¿por qué * lo están haciendo? Después de todo, Google es conocido por su código limpio y compatible con los estándares (no solo HTML, pero he escuchado cosas excelentes sobre C++), por lo que debe haber una buena razón por la que no respeta el estándar. –

+4

Lo más probable es que todos esos nombres locos sean generados por una herramienta y no con lo que realmente trabajan los desarrolladores. Google también es famoso por la optimización, y reducir los bytes de algo descargado por millones puede generar ahorros reales. –

Respuesta

0

Google solo posee un navegador, por lo que si desean crear una aplicación web compatible con cross browser como firefox, deben seguir los mismos estándares y reglas que cualquier otro desarrollador web. Dicho esto, la mayoría de los navegadores modernos son bastante indulgentes cuando se trata de analizar html, por lo tanto, aunque su ejemplo no sea HTML correcto y probablemente no valide, no habrá efectos negativos visibles.

+1

Sí, estaba pensando algo en la misma línea, pero no pude encontrar una razón para justificarlo. ¿Por qué harían voluntariamente algo potencialmente incompatible con el navegador? Tiene que haber una compensación que valga la pena. – redgem

5

Los ID solían ser bastante estrictos en lo que se permitía, no tanto para las clases. Sin embargo, HTML5 ha reducido muchas de las restricciones en lo que podrían ser valores de ID.

He aquí un artículo en el que están permitidas para los ID y las clases en HTML5: http://mathiasbynens.be/notes/html5-id-class

Es suficiente para hacer que su dolor de cabeza.

EDIT:

Para hacer frente a más de su pregunta acerca de por qué Google está utilizando un ID aparentemente al azar, estoy seguro que los identificadores y clases que están usando tienen perfecto sentido a sus programadores.

Cuestiones relacionadas