Conhecendo Sass
O que é Sass?
Diferenças entre Sass, SCSS e Less
Preparar o Ambiente
Como instalar Sass no seu computador
Apresentação do projeto
Compilar arquivos Sass
Noções básicas de Sass
Criar e utilizar variáveis
Utilizar aninhamento na estilização
Organizar o Projeto
Estruturar um projeto simples com parciais e módulos
Estruturar projetos maiores
Platzidoro 1
Mixins
Criar e utilizar mixins
Usando mixins com parâmetros
Aplicar heranças em Sass
SassScript
O que é SassScript?
Operações com números
Operações com strings
Operações com cores
Funções
Modularizar utilizando funções
Usando listas
Usando map
Controle de Fluxo
Platzidoro 2
Criar condicionais em SassScript
Implementar ciclos em SassScript
Prevenir erros com @error e @warn
Sites Responsivos
Criar websites responsivos
Realizar consultas de mÃdia
Finalização do curso
Leitura
Uma estrutura de projeto seguindo uma estrutura de 3 parciais é a mais simples e rápida para que você comece a organizar um pequeno projeto.
Mas, se você sabe que o que irá trabalhar será um projeto maior ou se o seu projeto for ficando com a dimensão cada vez maior, está na hora de ver maneiras mais complexas de organizar o seu projeto!
Este é o padrão mais divulgado e definido para projetos grandes pela comunidade de Sass. Seu funcionamento é em cima do uso de 7 pastas (com os parciais) e 1 arquivo na raiz (normalmente vai ser o main.scss).
Cada pasta vai agrupar tipos diferentes de estilos, sendo eles:
Abstratos (também chamados de Utilidades):
São arquivos que devem somente ajudar, mas que não geram nenhum código CSS quando compilado. Assim, podem conter variáveis, funções, mixins ou arquivos de configuração diversos.
Base
Contém todo o estilo padrão do site, inclusive o que for comumente usado em todo o projeto. Exemplos de arquivos de base são regras tipográficas (como tamanhos e famÃlias), resets (que eliminam qualquer estilo preexistente em elementos) e outros estilos que você pode usar ao longo de todo o projeto.
Componentes (também chamados de Módulos)
Serão os arquivos para elementos reutilizáveis do seu site, como botões, carrosséis e sliders. Normalmente, essa parte vai se preencher muito rápido já que o site inteiro será separado em diversos componentes.
Layout
Mantém todas as estilizações em relação ao sistema grid, header, footer, navegação e qualquer outro aspecto de layout do seu projeto.
Páginas
Quando seu site tem mais de uma página, é comum que algumas delas tenham estilos diferentes das outras. Assim, nesta página ficará os estilos especÃficos a somente determinada página, sendo de uso exclusivo dela.
Temas
Se o seu projeto tiver temas diferentes disponÃveis (como um Dark Mode), aqui você colocaria as estilizações especÃficas para cada um deles. Admitidamente, não será uma pasta muito utilizada.
Vendors
Contém o código criado por terceiros, como bibliotecas e frameworks. Então, os arquivos para Bootstrap e jQuery UI, por exemplo, ficariam aqui.
O seguinte é um exemplo da estrutura 7-1, com os tipos de arquivos separados em sua pasta correspondente:
sass/
|
|– abstracts
| |– _variables.scss // Variáveis
| |– _functions.scss // Funções
| |– _mixins.scss // Mixins
|
|– base/
| |– _reset.scss // Reset
| |– _typography.scss // Tipografia
|
|– components
| |– _buttons.scss // Botões
| |– _carousel.scss // Carrossel
| |– _slider.scss // Slider
|
|– layout/
| |– _navigation.scss // Navegação
| |– _grid.scss // Sistema de Grid
| |– _header.scss // Header
| |– _footer.scss // Footer
| |– _forms.scss // Formuários
|
|– pages/
| |– _home.scss // Página Inicial
| |– _contact.scss // Página de Contato
|
|– themes/
| |– _theme.scss // Tema Padrão
| |– _admin.scss // Tema de Administrador
|
|– vendors/
| |– _bootstrap.scss // Bootstrap
| |– _jquery-ui.scss // jQuery UI
|
`– main.scss // Arquivo .SCSS principal
Agora, para utilizar todos estes parciais separados em pastas, basta fazer os @import necessários para que tudo fique conectado.
O arquivo main.scss referente ao exemplo anterior seria:
@import 'abstracts/variables';
@import 'abstracts/functions';
@import 'abstracts/mixins';
@import 'vendors/bootstrap';
@import 'vendors/jquery-ui';
@import 'base/reset';
@import 'base/typography';
@import 'layout/navigation';
@import 'layout/grid';
@import 'layout/header';
@import 'layout/footer';
@import 'layout/forms';
@import 'components/buttons';
@import 'components/carousel';
@import 'components/slider';
@import 'pages/home';
@import 'pages/contact';
@import 'themes/theme';
@import 'themes/admin';
Este padrão 7-1 é um dos mais conhecidos em relação à organização de projetos grandes em Sass, mas também não está escrito sobre pedra. Todo projeto é diferente, então cabe a você adaptar estruturas e organizações para que se encaixe melhor no que deseja.
Contribuições 0
Perguntas 0
As contribuições, perguntas e respostas são vitais para aprender em comunidade. Registre-se ou faça login para participar .