SlideShare uma empresa Scribd logo
1 de 26
Baixar para ler offline
{less}
CSS Dynamic
{less}
LESS uma linguagem dinâminca de estilo que é baseada em CSS,
que consiste na mesma ideia e uma sintaxe familiar.
{less}
LESS uma linguagem dinâminca de estilo que é baseada em CSS,
que consiste na mesma ideia e uma sintaxe familiar.
➜ Pré-Processador
{less}
LESS uma linguagem dinâminca de estilo que é baseada em CSS,
que consiste na mesma ideia e uma sintaxe familiar.
➜ Pré-Processador
➜ Compilação via JavaScript
VARIÁVEIS
Variáveis servem para definir valores padrões para seus projetos, pode
assim reutilizá-los em toda a sua folha de estilo.
VARIÁVEIS
Variáveis servem para definir valores padrões para seus projetos, pode
assim reutilizá-los em toda a sua folha de estilo.
➜ Alterações a niveis globais
VARIÁVEIS
Variáveis servem para definir valores padrões para seus projetos, pode
assim reutilizá-los em toda a sua folha de estilo.
➜ Alterações a niveis globais
➜ Constantes
VARIÁVEIS
Variáveis servem para definir valores padrões para seus projetos, pode
assim reutilizá-los em toda a sua folha de estilo.
➜ Alterações a niveis globais
➜ Constantes
VARIÁVEIS
Variáveis servem para definir valores padrões para seus projetos, pode
assim reutilizá-los em toda a sua folha de estilo.
➜ Alterações a niveis globais
➜ Constantes
less
1 @orange: #E85A05;
2 @green: #008000;
4 label {
5 color: @orange;
6 }
8 span {
9 color: @green;
10 }
3
7
css
1 label {
2 color: #E85A05;
3 }
5 span {
6 color: #008000;
7 }
4
Hierarquia
html
1 <ul class=”ul-first”>
2 <li>
3 <span>Option 1.0</span>
4 <ul class=”drop-down”>
5 <li>
6 <span>Option 1.1</span>
7 </li>
8 </ul>
9 </li>
10 <li>
11 <span>Option 2.0</span>
12 <ul class=”drop-down”>
13 <li>
14 <span>Option 2.2</span>
15 </li>
16 </ul>
17 </li>
18 </ul>
css
1 .ul-first {
2 margin: 0 auto;
3 }
4
5 .ul-first li {
6 list-style: none;
7 display: inline-block;
8 }
9
10
11
.ul-first li .drop-down {
12
display: none;
13
}
14
15
16 }
.ul-first li:hover .drop-down {
display: block;
Hierarquia
html
1 <ul class=”ul-first”>
2 <li>
3 <span>Option 1.0</span>
4 <ul class=”drop-down”>
5 <li>
6 <span>Option 1.1</span>
7 </li>
8 </ul>
9 </li>
10 <li>
11 <span>Option 2.0</span>
12 <ul class=”drop-down”>
13 <li>
14 <span>Option 2.2</span>
15 </li>
16 </ul>
17 </li>
18 </ul>
less
1 .ul-first {
2 margin: 0 auto;
3 li {
4 list-style: none; display: inline-block;
5 .drop-down {
6 display: none;
7 }
8 &:hover {
9 .drop-down {
10 display: block;
11 }
12 } // end :hover
13 } // end li
14 } // end ul
css
1 .ul-first {
2 margin: 0 auto;
3 }
4
5 .ul-first li {
6 list-style: none;
7 display: inline-block;
8 }
9
10
11
.ul-first li .drop-down {
12
display: none;
13
}
14
15
16 }
.ul-first li:hover .drop-down {
display: block;
Operações matemáticas
(adeus valores mágicos)
css
1 .container {
2 padding: 35px;
3 width: 960px;
4 }
6 .coluna {
7 width: 435px;
8 }
5
Operações matemáticas
(adeus valores mágicos)
css
1 .container {
2 padding: 35px;
3 width: 960px;
4 }
6 .coluna {
7 width: 435px;
8 }
5
(960px – 35px * 2 – 20px) / 2 = 435px
css
1 .container {
2 padding: 35px;
3 width: 960px;
4 }
6 .coluna {
7 width: 435px;
8 }
less
1 .coluna {
2 width: (960px – 35px * 2 – 20px) / 2;
3 }
5
(960px – 35px * 2 – 20px) / 2 = 435px
Operações matemáticas
(adeus valores mágicos)
css
1 .container {
2 padding: 35px;
3 width: 960px;
4 }
6 .coluna {
7 width: 435px;
8 }
less
1 .coluna {
2 width: (960px – 35px * 2 – 20px) / 2;
3 }
OU
1 @total: 960px;
2 @respiro: 35px;
3 @espaco: 20px;
5 .container {
6 padding: @respiro;
7 width: @total;
8 }
10 .coluna {
11 width: (@total - @respiro * 2 - @espaco) / 2;
12 }
4
9
5
(960px – 35px * 2 – 20px) / 2 = 435px
Operações matemáticas
(adeus valores mágicos)
MiXINS
Mixins segue o conceito de programação orientada a objetos, que
representa a utilização de classes dentro de classes.
MiXINS
Mixins segue o conceito de programação orientada a objetos, que
representa a utilização de classes dentro de classes.
less
1 .radius(@raio: 5px) {
2 -webkit-border-radius: @raio;
3 -moz-border-radius: @raio;
4 border-radius: @raio;
5 }
6
7
8 .container {
9 .radius();
10
MiXINS
Mixins segue o conceito de programação orientada a objetos, que
representa a utilização de classes dentro de classes.
less
1 .radius(@raio: 5px) {
2 -webkit-border-radius: @raio;
3 -moz-border-radius: @raio;
4 border-radius: @raio;
5 }
6
7
8 .container {
9 .radius();
10
css
1 .container {
2 -webkit-border-radius: 5px;
3 -moz-border-radius: 5px;
4 border-radius: 5px;
5 }
MiXINS
Mixins segue o conceito de programação orientada a objetos, que
representa a utilização de classes dentro de classes.
less
1 .radius(@raio: 5px) {
2 -webkit-border-radius: @raio;
3 -moz-border-radius: @raio;
4 border-radius: @raio;
5 }
6
7
8 .container {
9 .radius();
10
css
1 .container {
2 -webkit-border-radius: 5px;
3 -moz-border-radius: 5px;
4 border-radius: 5px;
5 }
less
1 .f-l() {
2 float: left;
3 }
4
5 .f-r() {
6 float: right;
7 }
8
less
1 @corbase: #459266;
2
3 button {
4 background: @corbase;
5 }
6
7 button:hover {
8 background: lighten(@corbase, 20%);
9 }
10
11 OU
12
13 button:hover {
14 background: saturate(@corbase, 20%);
15 }
FUNÇÕES
less
1 @corbase: #459266;
2
3 button {
4 background: @corbase;
5 }
6
7 button:hover {
8 background: lighten(@corbase, 20%);
9 }
10
11 OU
12
13 button:hover {
14 background: saturate(@corbase, 20%);
15 }
Outras funções:
darken, desaturate, fadein, fadeout, spin, mix.
FUNÇÕES
Install Less
Node.js
Node.js install
Windows
https://nodejs.org
Linux
https://nodejs.org
➜ Package
➧ curl -sL https://deb.nodesource.com/setup_4.x | sudo -E bash -
sudo apt-get install -y nodejs
➧ curl -sL https://deb.nodesource.com/setup_5.x | sudo -E bash -
sudo apt-get install -y nodejs
Less install
Linux
$ npm install less -g
➜ Git
git clone https://github.com/less/less.js.git
Windows
$ npm install -g less
➜ Download
https://github.com/less/less.js/zipball/master
➜ Git
git clone https://github.com/less/less.js.git
Using Less
Using command line
$ lessc style.less
Output CSS
$ lessc style.less style.css
Output CSS minified
$ lessc --clean-css styles.less styles.min.css
➜ Plugin:
$ npm install -g less-plugin-clean-css
OBRIGADO!
Gabriel Corrêa
https://github.com/gabscorrea

Mais conteúdo relacionado

Destaque

CV.hamdi.english. new.compressed
CV.hamdi.english. new.compressedCV.hamdi.english. new.compressed
CV.hamdi.english. new.compressedhamdi salhi
 
Conférence F. Esposito (20100419)
Conférence F. Esposito (20100419)Conférence F. Esposito (20100419)
Conférence F. Esposito (20100419)Louis Lepioufle
 
Catalogue formation la_boate_2011
Catalogue formation la_boate_2011Catalogue formation la_boate_2011
Catalogue formation la_boate_2011LaBoate
 
DFTG-1317-AB-L01
DFTG-1317-AB-L01DFTG-1317-AB-L01
DFTG-1317-AB-L01Alex Ball
 

Destaque (7)

CV.hamdi.english. new.compressed
CV.hamdi.english. new.compressedCV.hamdi.english. new.compressed
CV.hamdi.english. new.compressed
 
Conférence F. Esposito (20100419)
Conférence F. Esposito (20100419)Conférence F. Esposito (20100419)
Conférence F. Esposito (20100419)
 
Catalogue formation la_boate_2011
Catalogue formation la_boate_2011Catalogue formation la_boate_2011
Catalogue formation la_boate_2011
 
BookTrailerLink
BookTrailerLinkBookTrailerLink
BookTrailerLink
 
Sembiologíamolecular
SembiologíamolecularSembiologíamolecular
Sembiologíamolecular
 
DFTG-1317-AB-L01
DFTG-1317-AB-L01DFTG-1317-AB-L01
DFTG-1317-AB-L01
 
larry referral 2016
larry referral 2016larry referral 2016
larry referral 2016
 

Semelhante a Introdução ao LESS: pré-processador CSS dinâmico

TDC 2016 - Sass: CSS com super-poderes.
TDC 2016 - Sass: CSS com super-poderes.TDC 2016 - Sass: CSS com super-poderes.
TDC 2016 - Sass: CSS com super-poderes.Rodrigo Amora
 
Design Responsivo com Sass
Design Responsivo com SassDesign Responsivo com Sass
Design Responsivo com SassVitor Garcia
 
Facilitando sua vida com SASS
Facilitando sua vida com SASSFacilitando sua vida com SASS
Facilitando sua vida com SASSLarissa Carvalho
 
CSS - Cansei de Ser Subestimado
CSS - Cansei de Ser SubestimadoCSS - Cansei de Ser Subestimado
CSS - Cansei de Ser SubestimadoAnyssa Ferreira
 
Como Perder Peso (no browser)
Como Perder Peso (no browser)Como Perder Peso (no browser)
Como Perder Peso (no browser)Zeno Rocha
 
2. Introdução ao CSSpptx.pdf
2. Introdução ao CSSpptx.pdf2. Introdução ao CSSpptx.pdf
2. Introdução ao CSSpptx.pdfRubenManhia
 
Simplificando o Javascrip
Simplificando o JavascripSimplificando o Javascrip
Simplificando o JavascripMiquéias Amaro
 
don't repeat yourself front-ender
don't repeat yourself front-enderdon't repeat yourself front-ender
don't repeat yourself front-endertdc-globalcode
 
Palestra / Novidades No CSS3 / Instituto Infnet
Palestra / Novidades No CSS3 / Instituto InfnetPalestra / Novidades No CSS3 / Instituto Infnet
Palestra / Novidades No CSS3 / Instituto Infnethugodiasneto
 
Palestra sobre Novidades no CSS 3
Palestra sobre Novidades no CSS 3Palestra sobre Novidades no CSS 3
Palestra sobre Novidades no CSS 3ECDD Infnet
 
Apostila completa de css
Apostila completa de cssApostila completa de css
Apostila completa de cssHeitor Victorio
 
Um guia bem básico de Bootstrap + Less
Um guia bem básico de Bootstrap + LessUm guia bem básico de Bootstrap + Less
Um guia bem básico de Bootstrap + LessBruno Said
 
Apostila Css ( Apostilando.com )
Apostila Css ( Apostilando.com )Apostila Css ( Apostilando.com )
Apostila Css ( Apostilando.com )Rodrigo Dias
 
XML Free Programming - Brazil
XML Free Programming - BrazilXML Free Programming - Brazil
XML Free Programming - BrazilStephen Chin
 

Semelhante a Introdução ao LESS: pré-processador CSS dinâmico (20)

Arquitetura CSS
Arquitetura CSSArquitetura CSS
Arquitetura CSS
 
Modular CSS - Projetando CSS para aplicativos
Modular CSS - Projetando CSS para aplicativosModular CSS - Projetando CSS para aplicativos
Modular CSS - Projetando CSS para aplicativos
 
TDC 2016 - Sass: CSS com super-poderes.
TDC 2016 - Sass: CSS com super-poderes.TDC 2016 - Sass: CSS com super-poderes.
TDC 2016 - Sass: CSS com super-poderes.
 
Design Responsivo com Sass
Design Responsivo com SassDesign Responsivo com Sass
Design Responsivo com Sass
 
React + sass
React + sassReact + sass
React + sass
 
Facilitando sua vida com SASS
Facilitando sua vida com SASSFacilitando sua vida com SASS
Facilitando sua vida com SASS
 
CSS - Cansei de Ser Subestimado
CSS - Cansei de Ser SubestimadoCSS - Cansei de Ser Subestimado
CSS - Cansei de Ser Subestimado
 
Como Perder Peso (no browser)
Como Perder Peso (no browser)Como Perder Peso (no browser)
Como Perder Peso (no browser)
 
2. Introdução ao CSSpptx.pdf
2. Introdução ao CSSpptx.pdf2. Introdução ao CSSpptx.pdf
2. Introdução ao CSSpptx.pdf
 
Simplificando o Javascrip
Simplificando o JavascripSimplificando o Javascrip
Simplificando o Javascrip
 
Ruby & Rails
Ruby & RailsRuby & Rails
Ruby & Rails
 
Web em grande estilo com CSS 3
Web em grande estilo com CSS 3Web em grande estilo com CSS 3
Web em grande estilo com CSS 3
 
don't repeat yourself front-ender
don't repeat yourself front-enderdon't repeat yourself front-ender
don't repeat yourself front-ender
 
Palestra / Novidades No CSS3 / Instituto Infnet
Palestra / Novidades No CSS3 / Instituto InfnetPalestra / Novidades No CSS3 / Instituto Infnet
Palestra / Novidades No CSS3 / Instituto Infnet
 
Palestra sobre Novidades no CSS 3
Palestra sobre Novidades no CSS 3Palestra sobre Novidades no CSS 3
Palestra sobre Novidades no CSS 3
 
Apostila completa de css
Apostila completa de cssApostila completa de css
Apostila completa de css
 
Um guia bem básico de Bootstrap + Less
Um guia bem básico de Bootstrap + LessUm guia bem básico de Bootstrap + Less
Um guia bem básico de Bootstrap + Less
 
Css Curso completo
Css Curso completoCss Curso completo
Css Curso completo
 
Apostila Css ( Apostilando.com )
Apostila Css ( Apostilando.com )Apostila Css ( Apostilando.com )
Apostila Css ( Apostilando.com )
 
XML Free Programming - Brazil
XML Free Programming - BrazilXML Free Programming - Brazil
XML Free Programming - Brazil
 

Introdução ao LESS: pré-processador CSS dinâmico

  • 2. {less} LESS uma linguagem dinâminca de estilo que é baseada em CSS, que consiste na mesma ideia e uma sintaxe familiar.
  • 3. {less} LESS uma linguagem dinâminca de estilo que é baseada em CSS, que consiste na mesma ideia e uma sintaxe familiar. ➜ Pré-Processador
  • 4. {less} LESS uma linguagem dinâminca de estilo que é baseada em CSS, que consiste na mesma ideia e uma sintaxe familiar. ➜ Pré-Processador ➜ Compilação via JavaScript
  • 5. VARIÁVEIS Variáveis servem para definir valores padrões para seus projetos, pode assim reutilizá-los em toda a sua folha de estilo.
  • 6. VARIÁVEIS Variáveis servem para definir valores padrões para seus projetos, pode assim reutilizá-los em toda a sua folha de estilo. ➜ Alterações a niveis globais
  • 7. VARIÁVEIS Variáveis servem para definir valores padrões para seus projetos, pode assim reutilizá-los em toda a sua folha de estilo. ➜ Alterações a niveis globais ➜ Constantes
  • 8. VARIÁVEIS Variáveis servem para definir valores padrões para seus projetos, pode assim reutilizá-los em toda a sua folha de estilo. ➜ Alterações a niveis globais ➜ Constantes
  • 9. VARIÁVEIS Variáveis servem para definir valores padrões para seus projetos, pode assim reutilizá-los em toda a sua folha de estilo. ➜ Alterações a niveis globais ➜ Constantes less 1 @orange: #E85A05; 2 @green: #008000; 4 label { 5 color: @orange; 6 } 8 span { 9 color: @green; 10 } 3 7 css 1 label { 2 color: #E85A05; 3 } 5 span { 6 color: #008000; 7 } 4
  • 10. Hierarquia html 1 <ul class=”ul-first”> 2 <li> 3 <span>Option 1.0</span> 4 <ul class=”drop-down”> 5 <li> 6 <span>Option 1.1</span> 7 </li> 8 </ul> 9 </li> 10 <li> 11 <span>Option 2.0</span> 12 <ul class=”drop-down”> 13 <li> 14 <span>Option 2.2</span> 15 </li> 16 </ul> 17 </li> 18 </ul> css 1 .ul-first { 2 margin: 0 auto; 3 } 4 5 .ul-first li { 6 list-style: none; 7 display: inline-block; 8 } 9 10 11 .ul-first li .drop-down { 12 display: none; 13 } 14 15 16 } .ul-first li:hover .drop-down { display: block;
  • 11. Hierarquia html 1 <ul class=”ul-first”> 2 <li> 3 <span>Option 1.0</span> 4 <ul class=”drop-down”> 5 <li> 6 <span>Option 1.1</span> 7 </li> 8 </ul> 9 </li> 10 <li> 11 <span>Option 2.0</span> 12 <ul class=”drop-down”> 13 <li> 14 <span>Option 2.2</span> 15 </li> 16 </ul> 17 </li> 18 </ul> less 1 .ul-first { 2 margin: 0 auto; 3 li { 4 list-style: none; display: inline-block; 5 .drop-down { 6 display: none; 7 } 8 &:hover { 9 .drop-down { 10 display: block; 11 } 12 } // end :hover 13 } // end li 14 } // end ul css 1 .ul-first { 2 margin: 0 auto; 3 } 4 5 .ul-first li { 6 list-style: none; 7 display: inline-block; 8 } 9 10 11 .ul-first li .drop-down { 12 display: none; 13 } 14 15 16 } .ul-first li:hover .drop-down { display: block;
  • 12. Operações matemáticas (adeus valores mágicos) css 1 .container { 2 padding: 35px; 3 width: 960px; 4 } 6 .coluna { 7 width: 435px; 8 } 5
  • 13. Operações matemáticas (adeus valores mágicos) css 1 .container { 2 padding: 35px; 3 width: 960px; 4 } 6 .coluna { 7 width: 435px; 8 } 5 (960px – 35px * 2 – 20px) / 2 = 435px
  • 14. css 1 .container { 2 padding: 35px; 3 width: 960px; 4 } 6 .coluna { 7 width: 435px; 8 } less 1 .coluna { 2 width: (960px – 35px * 2 – 20px) / 2; 3 } 5 (960px – 35px * 2 – 20px) / 2 = 435px Operações matemáticas (adeus valores mágicos)
  • 15. css 1 .container { 2 padding: 35px; 3 width: 960px; 4 } 6 .coluna { 7 width: 435px; 8 } less 1 .coluna { 2 width: (960px – 35px * 2 – 20px) / 2; 3 } OU 1 @total: 960px; 2 @respiro: 35px; 3 @espaco: 20px; 5 .container { 6 padding: @respiro; 7 width: @total; 8 } 10 .coluna { 11 width: (@total - @respiro * 2 - @espaco) / 2; 12 } 4 9 5 (960px – 35px * 2 – 20px) / 2 = 435px Operações matemáticas (adeus valores mágicos)
  • 16. MiXINS Mixins segue o conceito de programação orientada a objetos, que representa a utilização de classes dentro de classes.
  • 17. MiXINS Mixins segue o conceito de programação orientada a objetos, que representa a utilização de classes dentro de classes. less 1 .radius(@raio: 5px) { 2 -webkit-border-radius: @raio; 3 -moz-border-radius: @raio; 4 border-radius: @raio; 5 } 6 7 8 .container { 9 .radius(); 10
  • 18. MiXINS Mixins segue o conceito de programação orientada a objetos, que representa a utilização de classes dentro de classes. less 1 .radius(@raio: 5px) { 2 -webkit-border-radius: @raio; 3 -moz-border-radius: @raio; 4 border-radius: @raio; 5 } 6 7 8 .container { 9 .radius(); 10 css 1 .container { 2 -webkit-border-radius: 5px; 3 -moz-border-radius: 5px; 4 border-radius: 5px; 5 }
  • 19. MiXINS Mixins segue o conceito de programação orientada a objetos, que representa a utilização de classes dentro de classes. less 1 .radius(@raio: 5px) { 2 -webkit-border-radius: @raio; 3 -moz-border-radius: @raio; 4 border-radius: @raio; 5 } 6 7 8 .container { 9 .radius(); 10 css 1 .container { 2 -webkit-border-radius: 5px; 3 -moz-border-radius: 5px; 4 border-radius: 5px; 5 } less 1 .f-l() { 2 float: left; 3 } 4 5 .f-r() { 6 float: right; 7 } 8
  • 20. less 1 @corbase: #459266; 2 3 button { 4 background: @corbase; 5 } 6 7 button:hover { 8 background: lighten(@corbase, 20%); 9 } 10 11 OU 12 13 button:hover { 14 background: saturate(@corbase, 20%); 15 } FUNÇÕES
  • 21. less 1 @corbase: #459266; 2 3 button { 4 background: @corbase; 5 } 6 7 button:hover { 8 background: lighten(@corbase, 20%); 9 } 10 11 OU 12 13 button:hover { 14 background: saturate(@corbase, 20%); 15 } Outras funções: darken, desaturate, fadein, fadeout, spin, mix. FUNÇÕES
  • 23. Node.js install Windows https://nodejs.org Linux https://nodejs.org ➜ Package ➧ curl -sL https://deb.nodesource.com/setup_4.x | sudo -E bash - sudo apt-get install -y nodejs ➧ curl -sL https://deb.nodesource.com/setup_5.x | sudo -E bash - sudo apt-get install -y nodejs
  • 24. Less install Linux $ npm install less -g ➜ Git git clone https://github.com/less/less.js.git Windows $ npm install -g less ➜ Download https://github.com/less/less.js/zipball/master ➜ Git git clone https://github.com/less/less.js.git
  • 25. Using Less Using command line $ lessc style.less Output CSS $ lessc style.less style.css Output CSS minified $ lessc --clean-css styles.less styles.min.css ➜ Plugin: $ npm install -g less-plugin-clean-css