vi esta presentation about object oriented css, pero creo que, o bien no lo entiendo correctamente o no entiende los beneficios del uso de CSS OO:objeto CSS orientado
Ejemplo HTML:
<div class="border-1 bg-2 color-1 font-1">
</div>
Ejemplo CSS :
/* borders */
.border-1 { border: 1px solid red; }
/* backgrounds: */
.bg-2 { background: yellow; }
/* other sections */
veo la ventaja de ser capaz de cambiar estilos de múltiples elementos de forma rápida, por ejemplo, ser capaz de cambiar el esquema de color sería muy útil.
Pero en realidad, está definiendo el estilo/apariencia dentro del HTML, o al menos una parte de él. Por supuesto, es mejor que usar el atributo style
, porque aún puede intercambiar los estilos para un grupo de grupos.
El punto es que está definiendo los grupos de estilos dentro del HTML, pero aprendí que debe crear grupos "lógicos" dentro del HTML (ej. class="nav-item"
/class="btn submit-btn"
) y el CSS aplica completamente el estilo y define qué elementos pertenecen juntos desde el punto de vista "estilístico" (por ejemplo, .nav-item, .submit-btn { background: red; }
).
Quizás entendí mal el concepto. Sin embargo, todavía no conozco una buena forma de construir mi CSS.
@madr, has [Menos] (http://lesscss.org/) o [Sass] (http://sass-lang.com/)? Son una solución mucho mejor al problema que tratar de orientar los objetos de cuerno a algo que nunca estará orientado a objetos. –
@asbjomu Como no hay ninguna razón para no hacerlo, combino los preprocesadores con OOCSS para obtener lo mejor de ambos. Mis equipos están muy contentos con este acuerdo de trabajo. – madr
@ AsbjørnUlsberg, hablando de mi experiencia, para un desarrollador de UI que se mueve a scss/sass sin conocimiento de OOCSS, va a ser de muy poco bien, la razón principal es que OOCSS hace que un desarrollador piense cuándo debería abstraer una cierta porción de CSS como un componente independiente y si no se está haciendo esta pregunta como un desarrollador de CSS, entonces ¡pasar a SCSS no le va a hacer ningún bien a la persona! ¡Esta sola razón puede salvar una gran cantidad de código hinchado! –