Antes que nada, las clases jQuery UI en la documentación solo se aplican después de la finalización de document.ready. Puede darles el estilo que desee, pero no se librará del destello del contenido sin estilo. Las clases son útiles para tematizar la interfaz de usuario, no para afectar la apariencia de las cosas antes de que la interfaz de usuario esté en su lugar.
En segundo lugar, la etiqueta noscript es básicamente que hay que evitar, por una gran cantidad de razones: 1) En realidad, no le diga si javascript está encendido o no. Por ejemplo, podría estar habilitado en el navegador pero bloqueado por un firewall. 2) Es una etiqueta de nivel de bloque, por lo que solo hay ciertos lugares donde puede aparecer válidamente. No es una solución de uso múltiple. 3) La etiqueta no diferencia entre los grados de implementación de javascript en diferentes sistemas.
Estuvo más cerca de las mejores prácticas en su publicación original. El truco es hacer tanto la ocultación como la presentación en javascript. Primero, modele su página para que se vea aceptable con javascript deshabilitado. Entonces, para evitar que el flash del contenido sin estilo, hacer la ocultación de los elementos feos en JavaScript antes document.ready (esta es la parte crítica) mediante la asignación de una clase al elemento html:
jQuery('html').addClass('blahblah');
Debido a que la El elemento html ya existe, es válido para trabajar con él antes de document.ready. Entonces, al igual que Nick dice, poner los elementos ofensivos en un div con la clase "startsugly" y luego poner una línea en el CSS que oculta los elementos ofensivos:
.blahblah .startsugly {display: none;}
El punto aquí es que el display: none solo entra en juego cuando javascript está habilitado. Los usuarios con discapacidad aún podrán acceder a su contenido. Entonces, después de document.ready, poner en su interfaz de usuario jQuery "proxenetismo" funciones, y mostrar el elemento infractor nuevo:
$(".startsUgly").show();
aunque si se trata de contenido que es sólo condicionalmente visible en un acordeón o una estructura de pestaña, este último paso incluso podría ser innecesario.
Newsflash: jQuery UI * always * se ve feo. –
Iba a decir lo mismo ...: D –