SlideShare una empresa de Scribd logo
1 de 42
Professor
Adriano Teixeira de Souza
   Adriano Teixeira de Souza
     Fasul: Professor nas disciplinas de Estrutura de
     Dados, Paradigmas de Linguagens de
     Programação, Sistemas Distribuídos

     C.Vale: Analista de sistemas sênior e líder técnico
     de desenvolvimento de sistemas em ambiente
     web e desktop
1280 x 800




 Photo: Steve Rhodes
16 : 9




 Photo: Steve Rhodes
Netbook tela de 8.9”




 Photo: Steve Rhodes
Várias telas
Mais é melhor 5120 x 1600
2006 Smart Phones




 Flickr: photographer
9 de Janeiro de 2007



 Flickr: photographer
2008 Smart Phones




 Flickr: photographer
2009 Smart Phones




 Flickr: photographer
Android, BlackBerry




Flickr: photographer
2010 iPad – Vendas de 3 milhões de dispositivos em 80 dias




Flickr: photographer
iPhone 4 – 960 x 640 @ 326 ppi “Retina Display”




Flickr: photographer
Muitas telas




Flickr: photographer
A web deve ser acessível por qualquer
     pessoa em qualquer lugar.
   1 em 5 usuários acessam a internet de
    dispositivos móveis todo os dias
   O tráfego de dados móveis quase triplicou
    em 2010. Mantendo a tendências dos últimos
    3 anos.
   Acesso a internet por dispositivos móveis
    deve ultrapassar a de desktops entre 3 a 5
    anos.
   Vídeo-games e televisões atuais estão vindo
    com acesso a internet.
   Design Web Responsivo
     Trabalhar com um layout que se adapta as
     diferentes telas onde será apresentado

     A mesma página web poderia ser apresentada de
     forma diferente em diversos dispositivos
“Uma grid flexível, com imagens flexíveis e
 que incorpore media queries para criar um
       layout adaptável e responsivo”


                         Ethan Marcotte (@beep)
            http://www.alistapart.com/articles/responsive-web-design/
Mobile design
   Grid Flexível

   Imagens Flexíveis

   Media Queries
   Grid flexível
       Definindo tamanho em proporção
        ▪   % em vez de px, cria o fluid layout
        ▪   imagens também podem utilizar esta técnica
   CSS3 Media Queries
       Estilo condicional
       Permite a você definir apresentações para
        específicos tamanhos de tela, dispositivos e mais

    Jeffrey Zeldman: “It’s what some of us were going for
        with ‘liquid’ web design back in the 1990s, only it
        doesn’t suck.”
   Utilize Eric Meyer CSS Reset
   Divida o site em módulos, ou partes, de forma
    que possam ser movidas e redimensionadas
    conforme a necessidade
   Utilize em’s e % para dimensionar tamanhos e
    larguras
   Elemento / contexto = resultado
   Não arredonde casas decimais
   Esta regra diz para a imagem não exceder a
    largura do container. Overflow: hidden
    também funciona.
   Use Javascript para carregar imagens no
    tamanho apropriado
     https://github.com/filamentgroup/responsive-
     images

   Problemas de redimensionamento
     http://unstoppablerobotninja.com/entry/fluid-
     images
   min-width: referência as dimensões do
    viewport (área que o web site aparece)
   min-device-width referencia as dimensões
    de tela do dispositivos (talvez a forma mais
    segura para identificar dispositivos, iPad,
    iPhone, etc.)
   É possível selecionar baseado em dpi não
    somente width
   É possível selecionar baseado em
    profundidade de cores
O que nós podemos testar

   width               •   color
   height              •   color-index
   device-width        •   monochrome
   device-height       •   resolution
   orientation         •   scan
   aspect-ratio        •   grid
   device-aspect-ratio

   http://www.w3.org/TR/css3-mediaqueries/
   Antes de iniciar com smartfones, precisamos
    adicionar isto na seção head do nosso HTML.


   A propriedade Initial-scale configura o nível
    de zoom para 1.0 ou 100%, então o browsers
    viewport sabe que irá mostrar um website
    igual a largura da tela do dispositivo e não no
    seu layout padrão.
   Consolidação
   Web browsers são mais compatíveis com
    padrões de mercado
     Google Chrome: Webkit
     Safari: Webkit
     Firefox: Gecko
     IE8 é muito bom em relação aos anteriores
   Opera 9.5+
   Firefox 3.5+
   Safari 3
   Chrome
   Mobile Webkit
   Opera Mobile
code.google.com/p/css3-mediaqueries-js/

   IE8 e anteriores
   Firefox 1 & 2
   Safari 2
   Android: Chrome: Webkit

   iOS: Safari: Webkit

   Blackberry: Webkit (últimas versões)
   Faixa de dispositivos que o conteúdo será
    visto
   Como o layout será apresentado de forma
    eficiente em diferentes plataformas
   O tamanho padrão de imagens não deve
    estar baseado no layout alvo padrão (você
    pode ter algumas imagens diferentes para
    dispositivos diferentes).
   Tenha um plano para uma diversidade de
    largura de telas

Más contenido relacionado

Destacado

Prog web 02-php-primeiros-passos
Prog web 02-php-primeiros-passosProg web 02-php-primeiros-passos
Prog web 02-php-primeiros-passos
Regis Magalhães
 
Prog web 01-php-introducao
Prog web 01-php-introducaoProg web 01-php-introducao
Prog web 01-php-introducao
Regis Magalhães
 
Java 01 Java Visao Geral Detalhado
Java 01 Java Visao Geral DetalhadoJava 01 Java Visao Geral Detalhado
Java 01 Java Visao Geral Detalhado
Regis Magalhães
 
Prog web 00-modelo-cliente_servidor_web
Prog web 00-modelo-cliente_servidor_webProg web 00-modelo-cliente_servidor_web
Prog web 00-modelo-cliente_servidor_web
Regis Magalhães
 
Prog web 03-php-sessoes-cookies_cabecalhos
Prog web 03-php-sessoes-cookies_cabecalhosProg web 03-php-sessoes-cookies_cabecalhos
Prog web 03-php-sessoes-cookies_cabecalhos
Regis Magalhães
 
Linked Data - Minicurso - SBBD 2011
Linked Data - Minicurso - SBBD 2011Linked Data - Minicurso - SBBD 2011
Linked Data - Minicurso - SBBD 2011
Regis Magalhães
 
Paradigmas de Linguagens de Programação - Gerenciamento de Memória em Java
Paradigmas de Linguagens de Programação - Gerenciamento de Memória em JavaParadigmas de Linguagens de Programação - Gerenciamento de Memória em Java
Paradigmas de Linguagens de Programação - Gerenciamento de Memória em Java
Adriano Teixeira de Souza
 
Estrutura de Dados em Java (Introdução à Programação Orientada a Objetos)
Estrutura de Dados em Java (Introdução à Programação Orientada a Objetos)Estrutura de Dados em Java (Introdução à Programação Orientada a Objetos)
Estrutura de Dados em Java (Introdução à Programação Orientada a Objetos)
Adriano Teixeira de Souza
 
Paradigmas de Linguagens de Programação - Biblioteca de Classes e Frameworks
Paradigmas de Linguagens de Programação - Biblioteca de Classes e Frameworks Paradigmas de Linguagens de Programação - Biblioteca de Classes e Frameworks
Paradigmas de Linguagens de Programação - Biblioteca de Classes e Frameworks
Adriano Teixeira de Souza
 

Destacado (20)

Prog web 02-php-primeiros-passos
Prog web 02-php-primeiros-passosProg web 02-php-primeiros-passos
Prog web 02-php-primeiros-passos
 
Java 14 Javadoc
Java 14 JavadocJava 14 Javadoc
Java 14 Javadoc
 
Prog web 07-pdo
Prog web 07-pdoProg web 07-pdo
Prog web 07-pdo
 
Prog web 01-php-introducao
Prog web 01-php-introducaoProg web 01-php-introducao
Prog web 01-php-introducao
 
Java 15 Jar
Java 15 JarJava 15 Jar
Java 15 Jar
 
Easy Rails
Easy RailsEasy Rails
Easy Rails
 
Java 01 Java Visao Geral Detalhado
Java 01 Java Visao Geral DetalhadoJava 01 Java Visao Geral Detalhado
Java 01 Java Visao Geral Detalhado
 
Prog web 00-modelo-cliente_servidor_web
Prog web 00-modelo-cliente_servidor_webProg web 00-modelo-cliente_servidor_web
Prog web 00-modelo-cliente_servidor_web
 
Web Scale Data Management
Web Scale Data ManagementWeb Scale Data Management
Web Scale Data Management
 
Pascal Tipos
Pascal TiposPascal Tipos
Pascal Tipos
 
Prog web 06-php-oo
Prog web 06-php-ooProg web 06-php-oo
Prog web 06-php-oo
 
Prog web 03-php-sessoes-cookies_cabecalhos
Prog web 03-php-sessoes-cookies_cabecalhosProg web 03-php-sessoes-cookies_cabecalhos
Prog web 03-php-sessoes-cookies_cabecalhos
 
Linked Data Tutorial - Conferencia W3C Brasil 2011
Linked Data Tutorial - Conferencia W3C Brasil 2011Linked Data Tutorial - Conferencia W3C Brasil 2011
Linked Data Tutorial - Conferencia W3C Brasil 2011
 
Coding Dojo
Coding DojoCoding Dojo
Coding Dojo
 
Linked Data - Minicurso - SBBD 2011
Linked Data - Minicurso - SBBD 2011Linked Data - Minicurso - SBBD 2011
Linked Data - Minicurso - SBBD 2011
 
Curso Ruby
Curso RubyCurso Ruby
Curso Ruby
 
Prog web 08-php-mvc
Prog web 08-php-mvcProg web 08-php-mvc
Prog web 08-php-mvc
 
Paradigmas de Linguagens de Programação - Gerenciamento de Memória em Java
Paradigmas de Linguagens de Programação - Gerenciamento de Memória em JavaParadigmas de Linguagens de Programação - Gerenciamento de Memória em Java
Paradigmas de Linguagens de Programação - Gerenciamento de Memória em Java
 
Estrutura de Dados em Java (Introdução à Programação Orientada a Objetos)
Estrutura de Dados em Java (Introdução à Programação Orientada a Objetos)Estrutura de Dados em Java (Introdução à Programação Orientada a Objetos)
Estrutura de Dados em Java (Introdução à Programação Orientada a Objetos)
 
Paradigmas de Linguagens de Programação - Biblioteca de Classes e Frameworks
Paradigmas de Linguagens de Programação - Biblioteca de Classes e Frameworks Paradigmas de Linguagens de Programação - Biblioteca de Classes e Frameworks
Paradigmas de Linguagens de Programação - Biblioteca de Classes e Frameworks
 

Similar a Responsive web design

Palestra urutai-mobile
Palestra urutai-mobilePalestra urutai-mobile
Palestra urutai-mobile
Rogerio Fontes
 
Apresentação Minas - Desenvolvendo Sites
Apresentação Minas - Desenvolvendo SitesApresentação Minas - Desenvolvendo Sites
Apresentação Minas - Desenvolvendo Sites
thiagolima
 

Similar a Responsive web design (20)

Web Design Responsivo
Web Design ResponsivoWeb Design Responsivo
Web Design Responsivo
 
Jquery Mobile
Jquery MobileJquery Mobile
Jquery Mobile
 
Bootstrap, desenvolvendo uma interface responsiva na prática!
Bootstrap, desenvolvendo uma interface responsiva na prática!Bootstrap, desenvolvendo uma interface responsiva na prática!
Bootstrap, desenvolvendo uma interface responsiva na prática!
 
HTML5 Mobile Aula 1
HTML5 Mobile Aula 1HTML5 Mobile Aula 1
HTML5 Mobile Aula 1
 
Responsive web design
Responsive web designResponsive web design
Responsive web design
 
Aplicacoes responsivas
Aplicacoes responsivasAplicacoes responsivas
Aplicacoes responsivas
 
Usando html5 e css3 para implementar interfaces responsivas
Usando html5 e css3 para implementar interfaces responsivasUsando html5 e css3 para implementar interfaces responsivas
Usando html5 e css3 para implementar interfaces responsivas
 
Desenvolvimento de Aplicativos Móveis Multiplataforma
Desenvolvimento de Aplicativos Móveis MultiplataformaDesenvolvimento de Aplicativos Móveis Multiplataforma
Desenvolvimento de Aplicativos Móveis Multiplataforma
 
Padrões de Design Mobile
Padrões de Design MobilePadrões de Design Mobile
Padrões de Design Mobile
 
Bootstrap desenvolvendo e customizando interfaces para web, introduzindo aos ...
Bootstrap desenvolvendo e customizando interfaces para web, introduzindo aos ...Bootstrap desenvolvendo e customizando interfaces para web, introduzindo aos ...
Bootstrap desenvolvendo e customizando interfaces para web, introduzindo aos ...
 
Responsive Web Design
Responsive Web DesignResponsive Web Design
Responsive Web Design
 
Apresentação realidade aumentada para aplicações web e mobile
Apresentação   realidade aumentada para aplicações web e mobileApresentação   realidade aumentada para aplicações web e mobile
Apresentação realidade aumentada para aplicações web e mobile
 
Responsive wordpress
Responsive wordpressResponsive wordpress
Responsive wordpress
 
8ºConnecting Knowledge Web ou App
8ºConnecting Knowledge Web ou App8ºConnecting Knowledge Web ou App
8ºConnecting Knowledge Web ou App
 
Web ou App?
Web ou App?Web ou App?
Web ou App?
 
Palestra urutai-mobile
Palestra urutai-mobilePalestra urutai-mobile
Palestra urutai-mobile
 
Apresentação Minas - Desenvolvendo Sites
Apresentação Minas - Desenvolvendo SitesApresentação Minas - Desenvolvendo Sites
Apresentação Minas - Desenvolvendo Sites
 
XHTML e CSS
XHTML e CSSXHTML e CSS
XHTML e CSS
 
Responsive Web Design - Introdução
Responsive Web Design - IntroduçãoResponsive Web Design - Introdução
Responsive Web Design - Introdução
 
Sencha Touch, RhoMobile, AppMobi e jQuery Mobile um comparativo entre platafo...
Sencha Touch, RhoMobile, AppMobi e jQuery Mobile um comparativo entre platafo...Sencha Touch, RhoMobile, AppMobi e jQuery Mobile um comparativo entre platafo...
Sencha Touch, RhoMobile, AppMobi e jQuery Mobile um comparativo entre platafo...
 

Más de Adriano Teixeira de Souza

Estrutura de dados em Java - Árvores Binárias
Estrutura de dados em Java - Árvores BináriasEstrutura de dados em Java - Árvores Binárias
Estrutura de dados em Java - Árvores Binárias
Adriano Teixeira de Souza
 
Estrutura de dados em Java - Filas com lista encadeada
Estrutura de dados em Java - Filas com lista encadeada Estrutura de dados em Java - Filas com lista encadeada
Estrutura de dados em Java - Filas com lista encadeada
Adriano Teixeira de Souza
 
Estrutura de dados em Java - Ponteiros e Alocação de Memória
Estrutura de dados em Java - Ponteiros e Alocação de Memória Estrutura de dados em Java - Ponteiros e Alocação de Memória
Estrutura de dados em Java - Ponteiros e Alocação de Memória
Adriano Teixeira de Souza
 
Estrutura de Dados em Java (Funções e Procedimentos)
Estrutura de Dados em Java (Funções e Procedimentos)Estrutura de Dados em Java (Funções e Procedimentos)
Estrutura de Dados em Java (Funções e Procedimentos)
Adriano Teixeira de Souza
 
Estrutura de Dados em Java (Variáveis Compostas - Vetores e Matrizes)
Estrutura de Dados em Java (Variáveis Compostas - Vetores e Matrizes)Estrutura de Dados em Java (Variáveis Compostas - Vetores e Matrizes)
Estrutura de Dados em Java (Variáveis Compostas - Vetores e Matrizes)
Adriano Teixeira de Souza
 
Estrutura de Dados em Java (Revisão de Algoritimos em Java)
Estrutura de Dados em Java (Revisão de Algoritimos em Java)Estrutura de Dados em Java (Revisão de Algoritimos em Java)
Estrutura de Dados em Java (Revisão de Algoritimos em Java)
Adriano Teixeira de Souza
 
Sistemas Distribuídos - Comunicacao Distribuida - Middleware - JMS
Sistemas Distribuídos - Comunicacao Distribuida - Middleware - JMSSistemas Distribuídos - Comunicacao Distribuida - Middleware - JMS
Sistemas Distribuídos - Comunicacao Distribuida - Middleware - JMS
Adriano Teixeira de Souza
 
Sistemas Distribuídos - Comunicação Distribuída - EJB (JBoss 7)
Sistemas Distribuídos - Comunicação Distribuída - EJB (JBoss 7)Sistemas Distribuídos - Comunicação Distribuída - EJB (JBoss 7)
Sistemas Distribuídos - Comunicação Distribuída - EJB (JBoss 7)
Adriano Teixeira de Souza
 
Ferramentas para desenvolvimento web com produtividade - Artigo Final - Pos-G...
Ferramentas para desenvolvimento web com produtividade - Artigo Final - Pos-G...Ferramentas para desenvolvimento web com produtividade - Artigo Final - Pos-G...
Ferramentas para desenvolvimento web com produtividade - Artigo Final - Pos-G...
Adriano Teixeira de Souza
 
Ferramentas para desenvolvimento web com produtividade - Slide Artigo (2009)
Ferramentas para desenvolvimento web com produtividade -  Slide Artigo (2009)Ferramentas para desenvolvimento web com produtividade -  Slide Artigo (2009)
Ferramentas para desenvolvimento web com produtividade - Slide Artigo (2009)
Adriano Teixeira de Souza
 
Paradigmas de Linguagens de Programação - Modularização, componentização e re...
Paradigmas de Linguagens de Programação - Modularização, componentização e re...Paradigmas de Linguagens de Programação - Modularização, componentização e re...
Paradigmas de Linguagens de Programação - Modularização, componentização e re...
Adriano Teixeira de Souza
 
Paradigmas de Linguagens de Programação - Tratamento de Exceções
Paradigmas de Linguagens de Programação - Tratamento de ExceçõesParadigmas de Linguagens de Programação - Tratamento de Exceções
Paradigmas de Linguagens de Programação - Tratamento de Exceções
Adriano Teixeira de Souza
 
Paradigmas de Linguagens de Programação - Estruturas de Controle
Paradigmas de Linguagens de Programação - Estruturas de ControleParadigmas de Linguagens de Programação - Estruturas de Controle
Paradigmas de Linguagens de Programação - Estruturas de Controle
Adriano Teixeira de Souza
 

Más de Adriano Teixeira de Souza (20)

Aplicação de Integração Contínua para viabilizar a rastreabilidade de artefat...
Aplicação de Integração Contínua para viabilizar a rastreabilidade de artefat...Aplicação de Integração Contínua para viabilizar a rastreabilidade de artefat...
Aplicação de Integração Contínua para viabilizar a rastreabilidade de artefat...
 
Estrutura de dados em Java - Árvores Binárias
Estrutura de dados em Java - Árvores BináriasEstrutura de dados em Java - Árvores Binárias
Estrutura de dados em Java - Árvores Binárias
 
Estrutura de dados em Java - Pilhas
Estrutura de dados em Java - PilhasEstrutura de dados em Java - Pilhas
Estrutura de dados em Java - Pilhas
 
Estrutura de dados em Java - Filas com lista encadeada
Estrutura de dados em Java - Filas com lista encadeada Estrutura de dados em Java - Filas com lista encadeada
Estrutura de dados em Java - Filas com lista encadeada
 
Estrutura de dados em Java - Filas
Estrutura de dados em Java - FilasEstrutura de dados em Java - Filas
Estrutura de dados em Java - Filas
 
Estrutura de dados em Java - Ponteiros e Alocação de Memória
Estrutura de dados em Java - Ponteiros e Alocação de Memória Estrutura de dados em Java - Ponteiros e Alocação de Memória
Estrutura de dados em Java - Ponteiros e Alocação de Memória
 
Estrutura de dados em Java - Recursividade
Estrutura de dados em Java - RecursividadeEstrutura de dados em Java - Recursividade
Estrutura de dados em Java - Recursividade
 
Estrutura de dados em Java - Filas
Estrutura de dados em Java - Filas Estrutura de dados em Java - Filas
Estrutura de dados em Java - Filas
 
Estrutura de Dados em Java (Funções e Procedimentos)
Estrutura de Dados em Java (Funções e Procedimentos)Estrutura de Dados em Java (Funções e Procedimentos)
Estrutura de Dados em Java (Funções e Procedimentos)
 
Estrutura de Dados em Java (Variáveis Compostas - Vetores e Matrizes)
Estrutura de Dados em Java (Variáveis Compostas - Vetores e Matrizes)Estrutura de Dados em Java (Variáveis Compostas - Vetores e Matrizes)
Estrutura de Dados em Java (Variáveis Compostas - Vetores e Matrizes)
 
Estrutura de Dados em Java (Revisão de Algoritimos em Java)
Estrutura de Dados em Java (Revisão de Algoritimos em Java)Estrutura de Dados em Java (Revisão de Algoritimos em Java)
Estrutura de Dados em Java (Revisão de Algoritimos em Java)
 
Estrutura de Dados em Java (Introdução)
Estrutura de Dados em Java (Introdução)Estrutura de Dados em Java (Introdução)
Estrutura de Dados em Java (Introdução)
 
Sistemas Distribuídos - Comunicacao Distribuida - Middleware - JMS
Sistemas Distribuídos - Comunicacao Distribuida - Middleware - JMSSistemas Distribuídos - Comunicacao Distribuida - Middleware - JMS
Sistemas Distribuídos - Comunicacao Distribuida - Middleware - JMS
 
Sistemas Distribuídos - Comunicação Distribuída - EJB (JBoss 7)
Sistemas Distribuídos - Comunicação Distribuída - EJB (JBoss 7)Sistemas Distribuídos - Comunicação Distribuída - EJB (JBoss 7)
Sistemas Distribuídos - Comunicação Distribuída - EJB (JBoss 7)
 
Estrutura de dados - Árvores Binárias
Estrutura de dados - Árvores BináriasEstrutura de dados - Árvores Binárias
Estrutura de dados - Árvores Binárias
 
Ferramentas para desenvolvimento web com produtividade - Artigo Final - Pos-G...
Ferramentas para desenvolvimento web com produtividade - Artigo Final - Pos-G...Ferramentas para desenvolvimento web com produtividade - Artigo Final - Pos-G...
Ferramentas para desenvolvimento web com produtividade - Artigo Final - Pos-G...
 
Ferramentas para desenvolvimento web com produtividade - Slide Artigo (2009)
Ferramentas para desenvolvimento web com produtividade -  Slide Artigo (2009)Ferramentas para desenvolvimento web com produtividade -  Slide Artigo (2009)
Ferramentas para desenvolvimento web com produtividade - Slide Artigo (2009)
 
Paradigmas de Linguagens de Programação - Modularização, componentização e re...
Paradigmas de Linguagens de Programação - Modularização, componentização e re...Paradigmas de Linguagens de Programação - Modularização, componentização e re...
Paradigmas de Linguagens de Programação - Modularização, componentização e re...
 
Paradigmas de Linguagens de Programação - Tratamento de Exceções
Paradigmas de Linguagens de Programação - Tratamento de ExceçõesParadigmas de Linguagens de Programação - Tratamento de Exceções
Paradigmas de Linguagens de Programação - Tratamento de Exceções
 
Paradigmas de Linguagens de Programação - Estruturas de Controle
Paradigmas de Linguagens de Programação - Estruturas de ControleParadigmas de Linguagens de Programação - Estruturas de Controle
Paradigmas de Linguagens de Programação - Estruturas de Controle
 

Último

Assessement Boas Praticas em Kubernetes.pdf
Assessement Boas Praticas em Kubernetes.pdfAssessement Boas Praticas em Kubernetes.pdf
Assessement Boas Praticas em Kubernetes.pdf
Natalia Granato
 

Último (6)

ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docxATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
 
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docxATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
 
Assessement Boas Praticas em Kubernetes.pdf
Assessement Boas Praticas em Kubernetes.pdfAssessement Boas Praticas em Kubernetes.pdf
Assessement Boas Praticas em Kubernetes.pdf
 
Padrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemploPadrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemplo
 
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docxATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
 
Boas práticas de programação com Object Calisthenics
Boas práticas de programação com Object CalisthenicsBoas práticas de programação com Object Calisthenics
Boas práticas de programação com Object Calisthenics
 

Responsive web design

  • 2. Adriano Teixeira de Souza  Fasul: Professor nas disciplinas de Estrutura de Dados, Paradigmas de Linguagens de Programação, Sistemas Distribuídos  C.Vale: Analista de sistemas sênior e líder técnico de desenvolvimento de sistemas em ambiente web e desktop
  • 3.
  • 4. 1280 x 800 Photo: Steve Rhodes
  • 5. 16 : 9 Photo: Steve Rhodes
  • 6. Netbook tela de 8.9” Photo: Steve Rhodes
  • 8. Mais é melhor 5120 x 1600
  • 9. 2006 Smart Phones Flickr: photographer
  • 10. 9 de Janeiro de 2007 Flickr: photographer
  • 11. 2008 Smart Phones Flickr: photographer
  • 12. 2009 Smart Phones Flickr: photographer
  • 14. 2010 iPad – Vendas de 3 milhões de dispositivos em 80 dias Flickr: photographer
  • 15. iPhone 4 – 960 x 640 @ 326 ppi “Retina Display” Flickr: photographer
  • 17. A web deve ser acessível por qualquer pessoa em qualquer lugar.
  • 18. 1 em 5 usuários acessam a internet de dispositivos móveis todo os dias  O tráfego de dados móveis quase triplicou em 2010. Mantendo a tendências dos últimos 3 anos.  Acesso a internet por dispositivos móveis deve ultrapassar a de desktops entre 3 a 5 anos.  Vídeo-games e televisões atuais estão vindo com acesso a internet.
  • 19. Design Web Responsivo  Trabalhar com um layout que se adapta as diferentes telas onde será apresentado  A mesma página web poderia ser apresentada de forma diferente em diversos dispositivos
  • 20. “Uma grid flexível, com imagens flexíveis e que incorpore media queries para criar um layout adaptável e responsivo” Ethan Marcotte (@beep) http://www.alistapart.com/articles/responsive-web-design/
  • 21.
  • 23. Grid Flexível  Imagens Flexíveis  Media Queries
  • 24. Grid flexível  Definindo tamanho em proporção ▪ % em vez de px, cria o fluid layout ▪ imagens também podem utilizar esta técnica  CSS3 Media Queries  Estilo condicional  Permite a você definir apresentações para específicos tamanhos de tela, dispositivos e mais Jeffrey Zeldman: “It’s what some of us were going for with ‘liquid’ web design back in the 1990s, only it doesn’t suck.”
  • 25. Utilize Eric Meyer CSS Reset  Divida o site em módulos, ou partes, de forma que possam ser movidas e redimensionadas conforme a necessidade  Utilize em’s e % para dimensionar tamanhos e larguras  Elemento / contexto = resultado  Não arredonde casas decimais
  • 26.
  • 27.
  • 28.
  • 29.
  • 30.
  • 31. Esta regra diz para a imagem não exceder a largura do container. Overflow: hidden também funciona.
  • 32. Use Javascript para carregar imagens no tamanho apropriado  https://github.com/filamentgroup/responsive- images  Problemas de redimensionamento  http://unstoppablerobotninja.com/entry/fluid- images
  • 33. min-width: referência as dimensões do viewport (área que o web site aparece)  min-device-width referencia as dimensões de tela do dispositivos (talvez a forma mais segura para identificar dispositivos, iPad, iPhone, etc.)  É possível selecionar baseado em dpi não somente width  É possível selecionar baseado em profundidade de cores
  • 34.
  • 35.
  • 36. O que nós podemos testar  width • color  height • color-index  device-width • monochrome  device-height • resolution  orientation • scan  aspect-ratio • grid  device-aspect-ratio  http://www.w3.org/TR/css3-mediaqueries/
  • 37. Antes de iniciar com smartfones, precisamos adicionar isto na seção head do nosso HTML.  A propriedade Initial-scale configura o nível de zoom para 1.0 ou 100%, então o browsers viewport sabe que irá mostrar um website igual a largura da tela do dispositivo e não no seu layout padrão.
  • 38. Consolidação  Web browsers são mais compatíveis com padrões de mercado  Google Chrome: Webkit  Safari: Webkit  Firefox: Gecko  IE8 é muito bom em relação aos anteriores
  • 39. Opera 9.5+  Firefox 3.5+  Safari 3  Chrome  Mobile Webkit  Opera Mobile
  • 40. code.google.com/p/css3-mediaqueries-js/  IE8 e anteriores  Firefox 1 & 2  Safari 2
  • 41. Android: Chrome: Webkit  iOS: Safari: Webkit  Blackberry: Webkit (últimas versões)
  • 42. Faixa de dispositivos que o conteúdo será visto  Como o layout será apresentado de forma eficiente em diferentes plataformas  O tamanho padrão de imagens não deve estar baseado no layout alvo padrão (você pode ter algumas imagens diferentes para dispositivos diferentes).  Tenha um plano para uma diversidade de largura de telas

Notas del editor

  1. Inicialmente o trabalho de web designers se focava apenas em adequar seus websites para monitores normaisA terrível briga entre mozilla (firefox) e internet explorer Apenas 2 ambientes para homologar o trabalhoTínhamos resoluções de 800 x 600, 1024 x 768
  2. Posteriormente surgiram os notebooks com resoluções de 1280 x 800Tipo de tela um pouco diferente, mas nada muito difícil de se trabalhar
  3. Na sequencia vieram os monitores widescreen com proporção de 16:9Neste momento surgiu uma situação onde as aplicações precisavam de uma certa adaptaçãoPois tivemos resoluções maiores, como: 1440 x 900 Isso deixava um espaço muito grande em branco
  4. Para complicar mais ainda, surgiram os netbooksTínhamos 2 extremos, uma tela com resolução muito grande de um lado e um netbook com tela reduzida de outro
  5. Então temos ai vários tipos de telaIsso já nos daria um certo trabalho homologar nosso websiteJá fugia daquela simples disputa entre Internet Explorer e Mozilla (Firefox)
  6. Para completar ainda tem aquele nerd que quer não gosta do alt+tabQuer ver várias telas ao mesmo tempo
  7. Em 2006 começou aparecer os primeiros smartfones Ainda eram aparelhos muito limitadosNão dava para se fazer muita coisa prática
  8. Em 2007 começou a revolução na linha de smartfonesCom o lançamento do iPhone as coisas mudamTemos ai um aparecem com grande quantidade de recursoE uma tela de boa visibilidadeNada comparado ao que havia na época
  9. Em 2008 vieram outros smartfones Nada que chegasse próximo ao iPhone mas já era uma evolução
  10. Em 2009 surgiram novas versões de smartfones
  11. Neste mesmo ano surgiu uma versão melhorada do Blackberry chamada de BlackBerry Curve 8900E teve ascenção o Android, que surgiu com muita força, apoiado na Gigante Google
  12. Em 2010 a Apple lançou o iPad, que veio com muita força 3 milhões de venda em apenas 80 diasE não suportava flash, que ainda era uma forte ferramenta para web
  13. Em 2010 também foi lançado o iPhone 4 Com resolução de 960 x 640, de fato uma ótima resolução Com 361 pixels por polegadasSob a afirmação de que 300 ppi a cerca de 30 centimetros do olho era o máximo que um humano poderia enxergar
  14. Agora tempos um pouco mais de trabalho para homologar nossas aplicaçõesAlém da famosa disputa de Internet Explorer x Mozilla Firefox no desktopAgora temos que homologar uma aplicação acessível em smartfones
  15. Show example of Amscan.org