¿Por qué no debería uno cambiar la propiedad predeterminada de “visualización” de un elemento?

HTML es agregar significado al contenido, CSS es agregar presentación.

Se debe agregar marcado al contenido para darle un significado semántico.
Un encabezado obtiene una etiqueta hX, enumera ul / ol / li, y con HTML5 ahora podemos establecer encabezado / pie de página / nav / etc.

Luego se agrega CSS para dar una capa de presentación a estos elementos.
El marcado no debe elegirse debido a la presentación que ofrece la hoja de estilo predeterminada del navegador.

Los elementos vienen por defecto como display: inline o display: block (ignorando inline-block y otros por simplicidad de explicación). Hay instancias cuando se desarrolla cuándo, para lograr la presentación requerida y también marcar el contenido adecuadamente de acuerdo con su significado, estos deberán cambiar. No hay problema.

La única excepción es la diferencia entre

y . Cada uno de estos es esencialmente un contenedor para su uso cuando otras etiquetas no cubren el significado que desea. Con HTML4 y xHTML 1.x, estos se usaban con frecuencia como

Ok, ahora que entiendo la pregunta un poco más, la premisa suena algo así como:

No debe restablecer las propiedades de visualización ‘predeterminadas’ (es decir, utilizando una regla en su archivo de restablecimiento CSS) de las etiquetas HTML.

Puedo entender por qué anularía los valores predeterminados en casos específicos, por ejemplo, hacer un bloque de etiqueta de anclaje para emular un botón, pero los valores predeterminados están ahí por una razón, y los valores de visualización en línea / bloque / bloque en línea / tabla son en realidad bastante estándar en todos los navegadores y son razonables para lo que esas etiquetas se comunican semanalmente. Si su marcado requiere que todo el sitio se aleje de las propiedades de visualización predeterminadas, volvería a verificar si primero está haciendo algo inapropiado con las etiquetas.

Creo que la regla general es que si puede usar un elemento con una visualización nativa que desee, debería … es decir, no use un

si está escribiendo el marcado usted mismo y necesita un elemento en línea.

Sin embargo, hay muchas situaciones en las que usted, la persona que escribe el CSS, no es la misma persona que está escribiendo el marcado, ya sea generado por la máquina o por el usuario, el código de otra persona, un antiguo proyecto al que ingresa, lo que sea.

No hay una buena razón para no usar la propiedad de visualización CSS para cambiar la forma en que se muestra un elemento. Simplemente tiene más sentido, si tiene control sobre el marcado, comenzar con un elemento que sea lo más nativo posible para sus necesidades.