Entonces, para evitar el caos, lo mejor es centrarse en una metodología CSS que permita crecer a un proyecto cuando tengamos alguna cosa específica que utilizar.
La metodología Object-Oriented CSS o OOCSS se basa en los siguientes dos principios:
En CSS hay propiedades de estructura que son invisibles al usuario pero modifican el tamaño y posición de un elemento y otro grupo de propiedades que modifican el aspecto visual de un elemento. En esta metodología los nombres de los estilos no deben contener referencias a los nombres de las propiedades.
SMACSS son las siglas de Scalable and Modular Architecture for CSS es otra metodología CSS que tiene como objetivo que el código CSS sea mejor, más fácil de leer y modular. En SMACSS se separan los siguientes elementos.
Es la que usamos en los componentes de Portal UI cuando los estamos desarrollando desde 0 porque permite desarrollar componentes fácilmente mediante nesting, aunque hay que pensar mucho los nombres de las clases y puede aumentar el tamaño del CSS si no se usa lazyloading.