Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Por que usar pré-processadores CSS?

Por que usar pré-processadores CSS?

Palestra ministrada na SCTI-UENF 2014.

Rômulo Machado

November 06, 2014
Tweet

More Decks by Rômulo Machado

Other Decks in Programming

Transcript

  1. Agenda • Abstração • Como pré-processadores nos ajudam • Convencendo

    o time • Mudando pro Sass • "Isso não é para mim porque…"
  2. 101010 0 1 0 0 1 1 * * *

    * * * 1 2 4 8 16 32 = = = = = = 0 0 0 32 2 8 42
  3. Nível de abstração long some_function() { long test1; test1 =

    another_function(); return test1; } example.c
  4. A INTERNET Decidimos que a coisa mais legal a se

    fazer era criar documentos interativos.
  5. localStorage app cache acessibilidade index db geolocation <picture> srcset HTML5

    semântico orientationchange gestos acelerômetro webGL SVG Canvas segurança Spam Marketing UX APIs REST Responsive Design Performance Testes Design Patterns Controle de Versão
  6. Como as possibilidades crescem e a gente pode tirar vantagem

    delas, a complexidade também cresce.
  7. CSS HTML JS templates,
 includes,
 partials,
 … variáveis,
 loops,
 condicionais,


    funções
 … http://rogovoyreport.com/wp-content/uploads/2014/08/Wiley-Coyote-Help.jpg
  8. Variáveis $brand: #C0FFEE; $link: #36465d; $error: #db4437; $warning: #f4b400; $success:

    #0f9d58; $spacing: 2em; $baseFontSize: 16px; $baseLineHeight: 1.4; $baseFontFamily: “Helvetica Neue”, Arial;
  9. Nesting .container { padding: 20px; } .container a { color:

    #fff; } .container > h3 { border-bottom: 1px solid gray; } .container ul { list-style: none; }
  10. Nesting .container { padding: 20px; a { color: #fff; }

    > h3 { border-bottom: 1px solid gray; } ul { list-style: none; } }
  11. @mixin fonts-body() { font-family: "Gotham", Helvetica; line-height: 1.4; font-weight: 100;

    color: #333; } body, textarea { @include fonts-body; } Mixins
  12. Extend .button { background: $defaultBackgroundColor; color: white; padding: 5px 10px;

    border-radius: 50%; } .button--big { @extend .button; font-size: 150%; }
  13. Toda vez que você for usar um @mixin que não

    recebe parâmetros, considere usar @extend.
  14. Mah, peraí! Mudar pra Sass não é tão custoso assim

    e pra aprender mesmo, só precisa de uma vez.
  15. Mah, peraí! CSS3 é cheio de vendors e é bem

    fácil de dar mer acontecer alguma coisa que quebre o site em algum browser diferente e são fod difíceis de manter.
  16. CSS é legal, mas te faz bem menos produtivo com

    tanta repetição e baixo nível de abstração. http://i.imgur.com/TAlTwvW.gif