Una vez que la gente se acostumbra a algo, es difícil cambiarlo. Por diversas razones, cada vez hay más navegadores nuevos, pero los antiguos no se pueden eliminar. El crecimiento es siempre más rápido que la muerte, lo que hace que la compatibilidad de los navegadores se convierta en un tema interminable. Hablando de compatibilidad del navegador, naturalmente me viene a la mente CSS HACK . Hoy en día, normalmente tenemos un equipo o un equipo de personas haciendo lo mismo en una empresa. Necesitamos tener especificaciones unificadas de codificación para facilitar el mantenimiento. La forma de solucionar la compatibilidad es (debe serlo, porque es la que tiene más probabilidades de tener problemas) una de las especificaciones más importantes a solucionar.
En términos de soluciones de compatibilidad, si queremos formular una especificación unificada, personalmente creo que los siguientes tres puntos deberían ser los principios básicos:
Poner el costo en primer lugar aquí no significa que no estemos dispuestos a buscar la perfección, sino que buscar la perfección demasiado deliberadamente a veces puede obstaculizar nuestro progreso después del costo. Debe ser mantenible y legible, lo cual es muy importante para el equipo y es crucial. el resultado final es reducir costes.
Primero guardemos estos tres principios y echemos un vistazo a nuestros métodos de escritura habituales para resolver problemas compatibles (más adelante se adjuntará una lista detallada de los métodos de Hack):
1. Truco del selector de CSS
/* Ópera */
@media todo y (-webkit-min-device-pixel-ratio:10000), no todo y (-webkit-min-device-pixel-ratio:0)
{cabeza~cuerpo .sofish{display:block;}}
Las ventajas y desventajas de esta forma de escribir son :
2. Hack de propiedad CSS
.sofish{
relleno: 10px;
padding:9px9; /* todo es decir */
relleno:8px ; /* es decir,8-9 */
*relleno:5px; /* es decir,6-7 */
+relleno:7px; /* es decir,7 */
_padding:6px; /* es decir,6 */
}
Las ventajas y desventajas de esta forma de escribir son :