¿Cuál es la mejor manera de hacer que las aplicaciones web se muestren de la misma manera en todos los navegadores?

Entonces, lo que realmente debe tener en cuenta al implementar una aplicación web es qué inconsistencias están presentes (funcionalidad y diseño).

Cuando trabaje con diseño (HTML y CSS), debe asegurarse de que todos sus elementos y selectores recurran a un conjunto básico de reglas. Este “conjunto base” es lo que crea coherencia con el diseño.

En términos de tener un respaldo específico para el diseño HTML y CSS, mi favorito en este momento es Normalizar (http://necolas.github.io/normali…). Hay otros que funcionan igual de bien, incluido el que mencionó, reset.css (http://meyerweb.com/eric/tools/c…).

También puede ver los polyfills de JavaScript que “arreglan” las inconsistencias con los navegadores (Lea: http://remysharp.com/2010/10/08/…). Cuando está haciendo cosas como la validación de formularios HTML5, el almacenamiento local o cualquier otro número de cosas, es posible que necesite un polyfill para crear consistencia entre los navegadores. Para ver una lista de los polyfills más populares y más compatibles, consulte esta página: https://github.com/Modernizr/Mod….

No quisiera mostrar lo mismo en todos los navegadores, sino “funcionar” de la misma manera en todos los navegadores. Especialmente si estás hablando de cosas CSS3 más pequeñas como border-radius, es demasiado esfuerzo manejar IE8, etc.

Para escribir CSS, SASS y Compass (=> Compass Home | Compass Documentation) son realmente útiles. SASS es un precompilador CSS que maneja todos los molestos prefijos del navegador por usted.

Como una adición a la respuesta de Keenans: siempre iría por un normalize.css en lugar de un reinicio. Un restablecimiento conducirá a sobrescribir estos restablecimientos nuevamente en muchos casos (que es un código doble, entonces), mientras que normalize.css minimizará este esfuerzo al menos un poco.

También podría tomar algo como Bootstrap (=> Bootstrap) como marco básico para empezar. Esto hará que su proceso de desarrollo sea bastante rápido porque casi todo lo que necesita está ahí como un conjunto de CSS predefinido y funcional. Pero tenga cuidado, agrega mucho código CSS que quizás no necesite al final.

Una herramienta adicional que podría usar para probar es Litmus. En realidad, es un verificador de diseño de correo electrónico, pero también existe Alkaline (=> Alkaline – Litmus) que le muestra un diseño en diferentes navegadores.