css: pare de usar frameworks e atualize-se

23
CSS - pare de só CSS - pare de só usar frameworks e usar frameworks e atualize-se atualize-se Uma leve discuss Uma leve discuss ão sobre o passado e ão sobre o passado e o presente do CSS o presente do CSS

Upload: julio-luiz-vedovatto-neto

Post on 08-Feb-2017

37 views

Category:

Internet


3 download

TRANSCRIPT

Page 1: CSS: pare de usar frameworks e atualize-se

CSS - pare de só CSS - pare de só usar frameworks e usar frameworks e

atualize-seatualize-seUma leve discussUma leve discussão sobre o passado e o ão sobre o passado e o

presente do CSSpresente do CSS

Page 2: CSS: pare de usar frameworks e atualize-se

Julio Vedovatto

30 anosGraduado em Tecnologia em Informação pela UFPRPós em Design de InteraçãoWeb Developer

Apaixonado pela web e surfar nela desde seu primeiro computador com acesso a Internet, em 1998

http://linkedin.com/in/vdvtthttp://github.com/juliovedovattohttp://www.konnng.com

Page 3: CSS: pare de usar frameworks e atualize-se

CSS Zen GardenCSS Zen Garden• Criado em 2003.• Era um site que mostrava o que era possível fazer com CSS.• Com um esqueleto HTML padrão, você só podia modificar a folha de

estilo.• Centenas de contribuições ao longo dos anos.• CSS2 + Hacks para se alcançar o objetivo.• IE6 SP1, Safari, Opera e Netscape é o que se tinha na época para

navegar.

Page 4: CSS: pare de usar frameworks e atualize-se
Page 5: CSS: pare de usar frameworks e atualize-se

MSN.com em 2003 #HALP

Page 6: CSS: pare de usar frameworks e atualize-se

Globo.com em 2003 #HALP

Page 7: CSS: pare de usar frameworks e atualize-se

Primeira versão em 2008 Primeira versão em 2004

Os 2 foram de grande importância para evolução do CSS, pois prestaram atenção na W3C

Page 8: CSS: pare de usar frameworks e atualize-se

• Isso foi só uma introdução para vocês lembrarem/entenderem como era o contexto da Web a mais de 1 década atrás.

• A dificuldade que era manter um site compatível com diversos navegadores.

• Você se via obrigado a saber de diversas técnicas, macetes, hacks, da construção do HTML.

• Ao construir a folha de estilo, você tinha que ir imaginando situações, como contornar, como iria se comportar em navegadores.

• Tinha que resolver algumas questões com Javascript. • Não se tinha Stack Overflow para procurar por ajuda e copiar

soluções.• Início de conversas sobre "tableless", sugerido pela W3C.

Page 9: CSS: pare de usar frameworks e atualize-se

Vamos pular um pouco no tempo

Page 10: CSS: pare de usar frameworks e atualize-se

CSS - dias atuais• Percebam a quantidade de ferramentas hoje em dia disponíveis para

se construir um site rapidamente. • O pessoal conseguiu trazer a "engenharia" para o frontend. • Lidamos hoje com navegadores que tiram notas altas no Acid Test.• Temos boas chances de ficar pixel perfect nos principais browsers do

Mercado.• IE morreu e virou Edge, mais compat✝ ível com CSS.• Temos hoje o CSS3 quase que totalmente implementado.• Grid Systems <3

Page 11: CSS: pare de usar frameworks e atualize-se

Problemas de antigamenteCaso 1: menu dropdown multinível – o pesadelo que era montar um.

.menu ul li { /** mágica vai aqui **/ }

Não se tinha suporte antigamente para descendente direto “>”

Atualmente .menu ul > li { /** mágica vai aqui **/ }

Page 12: CSS: pare de usar frameworks e atualize-se

Problemas de antigamenteCaso 2: Opacidade – várias linhas para a mesma coisa.transparent { -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)"; filter: alpha(opacity=50); -moz-opacity: 0.5; -khtml-opacity: 0.5;}

Atualmente – uma instrução apenas

.transparent { opacity: .5; }

Page 13: CSS: pare de usar frameworks e atualize-se

Problemas de antigamenteCaso 3: animações – uso de javascript obrigatório

$('.menu a').hover(function () { $(this).stop().animate({ fontSize: '130%' }, 500) }, function() { $(this).stop().animate({ fontSize: '100%' }) })

Atualmente

.menu a { transition: font .5s ease; }

.menu a:hover { font-size: 120%; }

Page 14: CSS: pare de usar frameworks e atualize-se

Coisas legais do CSS atualmente• CSS selectors• display: inline-block;• Flexbox <3• CSS Animations• CSS Columns• 3D Transforms• box-sizing: border-box;• Child Selectors • CSS Masks

• calc();• ::before / ::after• Gradients / Multiple Backgrounds• Webfonts• Media Queries – responsividade!!!• data-uri:• @supports• CSS Filters• Vendor attributes sendo cada vez

mais abandonados (-webkit, -moz, -o, ...)

Page 15: CSS: pare de usar frameworks e atualize-se

CSS FrameworksUm framework é um conjunto padronizado de conceitos, práticas e critérios para lidar com um tipo comum de problema, que pode ser usado como uma referência para nos ajudar a abordar e resolver novos problemas de natureza similarO objetivo de um framework é fornecer uma estrutura comum para que os devs não tenham que ficar fazendo coisas do zero e podem reutilizar o código depois em outras situações.

Um Framework CSS consiste em um pacote, composto de uma estrutura de arquivos e pastas de código padronizado

(HTML, CSS, documentos JS, etc)

Page 16: CSS: pare de usar frameworks e atualize-se

CSS – Frameworks: os mais topzeira• Bootstrap• Materialize CSS• Foundation• Angular Material• Semantic-UI• Susy• Gumby• Pure• BananaCSS

Page 17: CSS: pare de usar frameworks e atualize-se

CSS Frameworks - Prós• Eficiência – acelera o tempo de desenvolvimento• Segurança – cuida de questões como "cross browser"• Custo – com o fator eficiência, se reduz tempo de desenvolvimento• Suporte – grande comunidade para dar assistência• Ajuda e ter bons hábitos de web design• Lhe dá layouts limpos e simétricos

Page 18: CSS: pare de usar frameworks e atualize-se

CSS Frameworks - Contras• Você aprende o framework, não sua “linguagem”• Limitações• Código é público• A uma restrição de liberdade de código• Adiciona código extra• Força a usar a sua semântica• Você pode potencialmente desperdiçar tempo• Você acaba não tendo noção de como algumas coisas

foram feitas e como funcionam

Page 19: CSS: pare de usar frameworks e atualize-se

Mas por que eu devo parar de usá-los? WTF!?

Page 20: CSS: pare de usar frameworks e atualize-se

Calma, não é bem assim…• Título da talk foi uma brincadeira, para chamar atenção.• Intenção é fomentar a sua curiosidade de conhecer as nuances do

CSS, saber como foi o passado e como se comportar em cada situação.• Infelizmente, ainda temos navegadores mais antigos sendo usados, é

necessário aprender o crossbrowser.• Antes de pensar em Framework / SASS / LESS / Stylus – aprender a se

"virar na unha”• Ferramentas atuais são maravilindas, mas não vão cobrir todos os

casos. Além de limitar sua criatividade pro jeito deles.

Page 21: CSS: pare de usar frameworks e atualize-se

Calma, não é bem assim…• Não estou aqui para criticas, amo e uso muito ferramentas atuais de

CSS. Bootstrap salva vidas para coisas rápidas e bobas.• CSS Zen Garden foi um exemplo para mostrar, que nos "primórdios",

o que se dava para fazer só com uma folha de estilo e muitos hacks, era ”criativo” o código delas.• É necessário para ser um bom ”frontender” ter esse conhecimento

íntimo de CSS, saber seu comportamento e o que é possível fazer.• Saber que algumas coisas não será necessário toda estrutura pra

resolver o problema. Saber usar o “Bom Senso F.C."

Page 22: CSS: pare de usar frameworks e atualize-se

Onde ver mais coisas sobre CSS• CSS Tricks - http://css-tricks.com • A List Apart - http://alistapart.com• Smashing Maganize - http://smashingmagazine.com • CSS3.info - http://css3.info/• Can I use - http://caniuse.com • Livros do Maujor <3 (e o seu site)

Page 23: CSS: pare de usar frameworks e atualize-se

DONE!Momento reflexões internas, auto descobrimento

e leve discussão.

"The road to enlightenment”