Has preguntado "qué mal". Así que para desarrollar un poco la respuesta de @KorkKoritnik (totalmente precisa) ...
Ese código es incorrecto. Incorrecto no viene en tonos de gris. Este código viola el estándar y por lo tanto es incorrecto. Fallaría la verificación de validación, y debería.
Dicho esto, ningún navegador actualmente en el mercado se quejaría de ello, o tendría algún problema con él. Los navegadores estarían dentro de sus derechos para quejarse, pero ninguna de las versiones actuales de ninguno de ellos lo hace actualmente. Lo que no significa que las versiones futuras no traten mal este código.
Su comportamiento al intentar usar esa ID como un selector, ya sea en css o javascript, no se puede adivinar y probablemente varía de un navegador a otro. Supongo que se podría hacer un estudio para ver cómo reacciona cada navegador a eso. Creo que en el mejor de los casos, lo trataría como "class=", y seleccionaría la lista de ellos. (Eso podría confundir las bibliotecas de JavaScript, sin embargo, si yo fuera el autor de jQuery, podría haber optimizado mi código de selector para que si vienes a mí con un selector que comienza con "#", espero un solo objeto y obtengamos un la lista me puede llenar completamente.
También puede seleccionar el primero, o posiblemente el último, o no seleccionar ninguno de ellos, o bloquear el navegador por completo. No hay forma de saberlo sin probarlo.
"Qué tan malo" depende completamente de cómo estrictamente un navegador particular implementa la especificación HTML, y lo que hace cuando se enfrenta a una violación de esa especificación.
EDITAR: Me acabo de encontrar esto hoy. Estoy incorporando varios componentes de formularios de búsqueda en diversos tipos de entidades para producir una gran utilidad de informes todo en uno para este sitio, estoy cargando los formularios de búsqueda de páginas remotas en divs ocultos y los coloco en mi generador de informes cuando se selecciona el tipo de entidad apropiado como la fuente para el informe. Así que hay una versión oculta del formulario y una versión que se muestra en el generador de informes. El JavaScript que vino con, en todos los casos, se refiere a los elementos por ID, de los cuales ahora hay DOS en la página: el oculto y el que se muestra.
Lo que parece estar haciendo jQuery es seleccionarme el PRIMER, que en todos los casos es exactamente el que NO quiero.
Estoy trabajando alrededor de esto escribiendo selectores para especificar la región de la página en la que quiero que aparezca mi campo (es decir: $ ('# containerDiv #specificElement')). Pero hay una respuesta a tu pregunta: jQuery en Chrome definitivamente se comporta de una manera particular cuando se enfrenta a esta violación de especificaciones.