Iniciando com o Pré-processador Stylus: como instalar e usar!
Com certeza você que trabalha com desenvolvimento web já ouviu falar sobre, e pode até já ter brincado um pouco com pré-processadores css. Hoje vou falar um pouco sobre o Stylus e algumas features dessa belezinha.
Há algum tempo estava procurando uma maneira de agilizar a maneira que escrevia minhas folhas de estilo, logo de cara conheci o tão famoso Sass, por algum motivo adiei o estudo no assunto, e neste período ouvi falar sobre um tal de Stylus, fui dar uma olhada na sintaxe e foi amor a primeira vista.
Preparando o ambiente:
Bom, se você leu até aqui está interessado em como o stylus funciona. Ele roda com javascript, então vá logo instalando o nodeJS e inicie um projeto node.
npm init
Você vai precisar de um automatizador de tarefas para efetuar a compilação, utilizaremos o gulp, instale o gulp globalmente em sua maquina:
npm install gulp-cli -g
Agora crie uma pasta para o projeto e instale o gulp e o stylus como dependências de desenvolvimento:
npm install gulp gulp-stylus --save-dev
Agora precisamos configurar nosso gulpfile, aqui vai as configurações da tarefa que o gulp irá automatizar:
{
var gulp = require('gulp');
var stylus = require('gulp-stylus');
gulp.task('compile', function () {
return gulp.src('estilo.styl')
.pipe(stylus())
.pipe(gulp.dest('./'));
});
gulp.task('default', ['compile']);
}
Obs.: lembre-se sempre de executar a tarefa “gulp compile” no terminal. Para automatizar isto leia sobre o gulp-watch.
Agora que temos tudo configurado vamos ao que interessa, crie um arquivo chamado “estilo.styl” e vamos as dicas:
Sintaxe:
No stylus você pode esquecer de vez as “{}”, “:” e “;”.
- “Beleza Marcelo, mas como ele vai saber se o bloco acabou?” Simples: Indentação! Dê uma olhada na declaração abaixo:
.classe
color #000
.outra-classe
color #fff
Lindo, né?
Variáveis:
Um ótimo exemplo sobre onde usar variáveis seria quando você quer definir uma cor principal para o seu projeto, para que você não precise digitar aquele hexadecimal/rgb enorme toda vez que você for atribuir tal cor a uma propriedade, basta armazenar o valor em uma variável e chamá-la quando necessário.
// Definindo
cor-principal = #4B0082
// Usando
header
background cor-principal
Mixins:
Com mixins você pode otimizar muito seu tempo, você pode usá-los para fazer cross-browser por exemplo, sua sintaxe é bem parecida com as funções, mas não retornam nada, apenas aplicam o valor que você passou como parâmetro nas propriedades que você quiser, exempĺo:
// Usando:
box-shadow()
-webkit-box-shadow arguments
-moz-box-shadow arguments
box-shadow arguments
footer
box-shadow(0 0 5px #000)
// compila para:
footer {
-webkit-box-shadow: 0 0 5px #000;
-moz-box-shadow: 0 0 5px #000;
box-shadow: 0 0 5px #000;
}
Herança:
No stylus podemos herdar as propriedades definidas em uma classe escrita anteriormente com o uso do “@extend”, funciona de maneira muito simples, segue exemplo:
.classe
font-size 18px
color #000
.classeQueHerda
@extend .classe
text-transform uppercase
// compila para:
.classeQueHerda {
font-size: 18px;
color: #000;
text-transform: uppercase;
}
Continue descobrindo:
Citei apenas coisas básicas do stylus aqui, se você quiser se aprofundar mais na linguagem, recomendo que leia a documentação dela.
Deixe um comentário dizendo o que achou do post, críticas construtivas são bem vindas! :)