- Muito se fala sobre design patterns em linguagens de programação, mas e o CSS?
- Pensar na manutenção do código
Baseado em metodologias usadas em várias linguagens de programação.
Ex: Botões de vários tamanhos e cores utilizando a mesma classe base
Criado pelo Yahoo! para resolver problemas de CSS no Yahoo! Mail.
- Sem seletores com classes ou ids
- CSS Reset ou normalize.css
- Toda estrutura não repetida do projeto
- Componentes (botões, tabs, etc)
- Tudo que é estado da aplicação (is-active, is-collapse, is-blocked)
Construtures para aplicaçãoes que mudam o tema dinamicamente.
Nasceu de um projeto criado pelo time de front end da Yandex.
/* Elemento pai */
.formcontent {}
/* Elemento filho */
.formcontent__field {}
/* Elemento filho modificado */
.formcontent__field--first {}
Verificar se a lib tem uma versão preprocessada e realizar as mudanças a partir daí.