SlideShare ist ein Scribd-Unternehmen logo
1 von 26
DESIGN COM WEB
                             STANDARDS
                               Bruno Abrantes




Monday, February 9, 2009
SPAGHETTI CODE
Monday, February 9, 2009
SPAGHETTI CODE


               Layouts complexos, com tabelas dentro de tabelas, <font>
               tags e outras redundâncias duplicam ou triplicam a
               largura de banda necessária para uma página ser carregada.

               Sempre que surge um novo browser ou dispositivo, é
               provavelmente necessário criar mais uma versão da
               página.




Monday, February 9, 2009
WEB STANDARDS



               A partir de 2000, os browsers começaram a suportar
               tecnologias (CSS, XHTML, ECMAScript) desenvolvidas
               pela W3C e outros órgãos.




Monday, February 9, 2009
UTILIZAR STANDARDS


               Reduz o tempo de loading das páginas;

               Aumenta a acessibilidade, sem necessidade de sacrificar a
               estética e usabilidade;

               Simplifica eventuais redesigns.




Monday, February 9, 2009
UTILIZAR STANDARDS


               Permite suportar múltiplos browsers sem ter de criar
               múltiplas versões da página;

               Separa o conteúdo da apresentação;

               Assegura que as páginas continuarão a funcionar no futuro;




Monday, February 9, 2009
SUCK.COM
                              1996
Monday, February 9, 2009
SEPARAÇÃO DE COMPONENTES
                           Conteúdo
Monday, February 9, 2009
CONTEÚDO


               O elemento mais importante da página.

               É estruturado com recurso a (X)HTML.

               O conteúdo deve ser estruturado semanticamente.




Monday, February 9, 2009
DTD


               Um DTD, ou Document Type Definition, diz ao browser
               como fazer o render de um documento.

               http://www.w3.org/QA/2002/04/valid-dtd-list.html

               Não especificar um DTD ou fazê-lo de forma errada faz com
               que o browser utilize o quirks mode em vez do standards
               compliant mode no rendering da página.




Monday, February 9, 2009
XHTML 1.0 STRICT


               No SAPO Campus planeamos utilizar XHTML 1.0 Strict;

               Linguagem de transição entre o HTML e o XML;

                Elementos e atributos de apresentação e comportamento
               (FONT, BGCOLOR, TARGET) são deprecados.




Monday, February 9, 2009
SEMANTIC MARKUP


               Os dados são formatados de acordo com o seu significado.

               Assim, um título utiliza diferentes tags de Heading (<h1>,
               <h2>, <h3>, etc.) consoante a sua importância.

               Os nomes escolhidos para ids ou classes devem também
               revelar o significado ao invés do aspecto (class=”highlight”
               em vez de class=”yellow”).




Monday, February 9, 2009
SEMANTIC MARKUP


               As classes podem ser genéricas, para descrever estilos
               abstractos e repetitivos (ex: .clear, .left, .right, etc.)

               Regra geral, classes devem ser reutilizadas em vários
               elementos na página, e ids devem ser utilizados em
               elementos únicos;




Monday, February 9, 2009
ESTRUTURA


               O código deve ser correctamente indentado, facilitando a
               sua leitura e manutenção;

               As tags devem ser fechadas na ordem correcta, ou seja:
               <strong><a href=”teste.html”>Teste</a></strong>
               em vez de:
               <strong><a href=”teste.html”>Teste</a></strong>




Monday, February 9, 2009
VALID MARKUP


               O XHTML foi desenhado tendo em mente a portabilidade.

               Código sem erros ou elementos inválidos funciona
               correctamente em browsers, screen readers, dispositivos
               móveis, etc.




Monday, February 9, 2009
SEPARAÇÃO DE COMPONENTES
                         Apresentação
Monday, February 9, 2009
APRESENTAÇÃO

               As linguagens de apresentação (CSS1, CSS2, ...) formatam
               a página web, controlando aspectos como a tipografia, a
               cor, o posicionamento, etc.

               Como a apresentação está separada da estrutura, é possível
               alterar uma sem afectar a outra.

               O mesmo layout pode ser aplicado a várias páginas sem
               esforço, e pequenas alterações (como alterar o tamanho do
               texto) podem ser conseguidas em segundos em vez de horas.


Monday, February 9, 2009
APRESENTAÇÃO

               É possível criar folhas de estilo que suportem diferentes
               tipos de media;

               Assim, é fácil criar uma versão da página para impressão,
               sem que para isso seja necessário reescrever todo o código;

               Ou ainda uma versão mobile, com menos gráficos e uma
               interface ligeiramente diferente;

               Tudo isto sem alterar o XHTML!



Monday, February 9, 2009
SEPARAÇÃO DE COMPONENTES
                         Comportamento
Monday, February 9, 2009
COMPORTAMENTO

               O DOM (Document Object Model) proposto pela W3C
               funciona com XHTML, CSS, e ECMAScript 262.

               O ECMAScript é a versão standard do Javascript, o que
               significa que é possível programar comportamentos
               avançados que funcionam em todos os browsers.

               Acaba assim o Javascript que só funciona em Netscape, ou o
               ActiveX e JScript para IE.



Monday, February 9, 2009
Imagem retirada de http://alistapart.com




                   PROGRESSIVE ENHANCEMENT

Monday, February 9, 2009
PROGRESSIVE
                           ENHANCEMENT

               Origina do princípio de Graceful Degradation;

               No entanto, segue a direcção oposta;

               Deve ser providenciada uma experiência “normal” para
               browsers datados. Isto não significa que devamos
               comprometer a usabilidade da página;




Monday, February 9, 2009
PROGRESSIVE
                           ENHANCEMENT



               Através de técnicas de CSS avançadas, é possível melhorar a
               experiência dos utilizadores com browsers modernos.




Monday, February 9, 2009
<form id=quot;contact-formquot; action=quot;#quot; method=quot;postquot;>
                                                    <fieldset>
                                                     <legend>Contact Us</legend>
                                                     <p>Send us a message. All fields are required.</p>

                                                     <ol>
                                                      <li>
                                                       <label for=quot;contact-namequot;>Name</label>
                                                       <input type=quot;textquot; id=quot;contact-namequot; name=quot;namequot; />
                                                      </li>

                                                      <li>
                                                       <label for=quot;contact-emailquot;>Email</label>
                                                       <input type=quot;textquot; id=quot;contact-emailquot; name=quot;emailquot; />
                                                      </li>
                                                      <li>

                                                       <label for=quot;contact-messagequot;>Message</label>
                                                       <textarea id=quot;contact-messagequot; name=quot;messagequot; rows=quot;4quot; »
                                                       cols=quot;30quot;></textarea>
                                                      </li>
                                                     </ol>
       Exemplo retirado de http://alistapart.com     <button type=quot;submitquot;>Send It</button>

                                                    </fieldset>
                                                   </form>




                   PROGRESSIVE ENANCHEMENT
                           Um exemplo
Monday, February 9, 2009
PROGRESSIVE
                           ENHANCEMENT


               Neste formulário, o normal seria inserir os “:” dentro das
               tags <label>;

               No entanto, isto não acrescenta nenhuma informação
               necessária, e tem apenas uma função visual.




Monday, February 9, 2009
PROGRESSIVE
                             ENHANCEMENT
               Utilizando uma propriedade da spec 2.1 de CSS, content, os
               “:” podem ser automaticamente gerados:
               label:after {content: quot;:quot;;}



               Isto significa que, seguido ao conteúdo de qualquer <label>,
               é inserido dinamicamente o caracter “:”;

               Browsers mais antigos não suportam esta propriedade, mas
               a técnica “degrada” facilmente porque os “:” não são
               essenciais.


Monday, February 9, 2009

Weitere ähnliche Inhalte

Was ist angesagt?

HTML5 - UM GUIA DE REFERÊNCIA PARA DESENVOLVEDORES WEB
HTML5 - UM GUIA DE REFERÊNCIA PARA DESENVOLVEDORES WEBHTML5 - UM GUIA DE REFERÊNCIA PARA DESENVOLVEDORES WEB
HTML5 - UM GUIA DE REFERÊNCIA PARA DESENVOLVEDORES WEBPeslPinguim
 
Desenvolvimento de sites com xhtml e css nos
Desenvolvimento de sites com xhtml e css nosDesenvolvimento de sites com xhtml e css nos
Desenvolvimento de sites com xhtml e css nosVinicius Rocha Olivieri
 
HTML 5 A evolução do HTML 4 para o HTML 5
HTML 5 A evolução do HTML 4 para o HTML 5HTML 5 A evolução do HTML 4 para o HTML 5
HTML 5 A evolução do HTML 4 para o HTML 5ondazul
 
Curso de html - Introdução ao HTML
Curso de html -  Introdução ao HTMLCurso de html -  Introdução ao HTML
Curso de html - Introdução ao HTMLTales Augusto
 
Unb 2012.1 - dweb - 04 - html5 básico - parte iii
Unb   2012.1 - dweb - 04 - html5 básico - parte iiiUnb   2012.1 - dweb - 04 - html5 básico - parte iii
Unb 2012.1 - dweb - 04 - html5 básico - parte iiiClaudenio Alberto
 
Curso HTML, CSS e JavaScript
Curso HTML, CSS e JavaScriptCurso HTML, CSS e JavaScript
Curso HTML, CSS e JavaScriptPablo Sanches
 
Fundamentos e Desenvolvimento de Interface Web com HTML5 & CSS3
Fundamentos e Desenvolvimento de Interface Web com HTML5 & CSS3 Fundamentos e Desenvolvimento de Interface Web com HTML5 & CSS3
Fundamentos e Desenvolvimento de Interface Web com HTML5 & CSS3 Cristofer Sousa
 
Apostila de HTML para iniciantes
Apostila de HTML para iniciantesApostila de HTML para iniciantes
Apostila de HTML para iniciantesWelington Carvalho
 
Curso de HTML5 - Aula 01
Curso de HTML5 - Aula 01   Curso de HTML5 - Aula 01
Curso de HTML5 - Aula 01 Léo Dias
 
Unb 2012.1 - dweb - 04 - html5 básico - parte i
Unb   2012.1 - dweb - 04 - html5 básico - parte iUnb   2012.1 - dweb - 04 - html5 básico - parte i
Unb 2012.1 - dweb - 04 - html5 básico - parte iClaudenio Alberto
 
Introdução ao HTML - Parte 1 - O que é?, Títulos, Texto Simples e Parágrafo
Introdução ao HTML - Parte 1 - O que é?, Títulos, Texto Simples e ParágrafoIntrodução ao HTML - Parte 1 - O que é?, Títulos, Texto Simples e Parágrafo
Introdução ao HTML - Parte 1 - O que é?, Títulos, Texto Simples e ParágrafoAlamo Saravali
 

Was ist angesagt? (20)

Introdução a HTML5
Introdução a HTML5Introdução a HTML5
Introdução a HTML5
 
HTML5 - UM GUIA DE REFERÊNCIA PARA DESENVOLVEDORES WEB
HTML5 - UM GUIA DE REFERÊNCIA PARA DESENVOLVEDORES WEBHTML5 - UM GUIA DE REFERÊNCIA PARA DESENVOLVEDORES WEB
HTML5 - UM GUIA DE REFERÊNCIA PARA DESENVOLVEDORES WEB
 
Desenvolvimento de sites com xhtml e css nos
Desenvolvimento de sites com xhtml e css nosDesenvolvimento de sites com xhtml e css nos
Desenvolvimento de sites com xhtml e css nos
 
HTML 5 A evolução do HTML 4 para o HTML 5
HTML 5 A evolução do HTML 4 para o HTML 5HTML 5 A evolução do HTML 4 para o HTML 5
HTML 5 A evolução do HTML 4 para o HTML 5
 
Curso de html - Introdução ao HTML
Curso de html -  Introdução ao HTMLCurso de html -  Introdução ao HTML
Curso de html - Introdução ao HTML
 
Xhtml
XhtmlXhtml
Xhtml
 
Unb 2012.1 - dweb - 04 - html5 básico - parte iii
Unb   2012.1 - dweb - 04 - html5 básico - parte iiiUnb   2012.1 - dweb - 04 - html5 básico - parte iii
Unb 2012.1 - dweb - 04 - html5 básico - parte iii
 
Curso HTML, CSS e JavaScript
Curso HTML, CSS e JavaScriptCurso HTML, CSS e JavaScript
Curso HTML, CSS e JavaScript
 
Curso de Desenvolvimento Web - Módulo 01 - HTML
Curso de Desenvolvimento Web - Módulo 01 - HTMLCurso de Desenvolvimento Web - Módulo 01 - HTML
Curso de Desenvolvimento Web - Módulo 01 - HTML
 
Curso HTML e CSS Part2
Curso HTML e CSS Part2Curso HTML e CSS Part2
Curso HTML e CSS Part2
 
Fundamentos e Desenvolvimento de Interface Web com HTML5 & CSS3
Fundamentos e Desenvolvimento de Interface Web com HTML5 & CSS3 Fundamentos e Desenvolvimento de Interface Web com HTML5 & CSS3
Fundamentos e Desenvolvimento de Interface Web com HTML5 & CSS3
 
Apostila de HTML para iniciantes
Apostila de HTML para iniciantesApostila de HTML para iniciantes
Apostila de HTML para iniciantes
 
Curso de HTML5 - Aula 01
Curso de HTML5 - Aula 01   Curso de HTML5 - Aula 01
Curso de HTML5 - Aula 01
 
Css tutorial
Css tutorialCss tutorial
Css tutorial
 
Unb 2012.1 - dweb - 04 - html5 básico - parte i
Unb   2012.1 - dweb - 04 - html5 básico - parte iUnb   2012.1 - dweb - 04 - html5 básico - parte i
Unb 2012.1 - dweb - 04 - html5 básico - parte i
 
06 html links e frames
06 html   links e frames06 html   links e frames
06 html links e frames
 
Introdução ao HTML - Parte 1 - O que é?, Títulos, Texto Simples e Parágrafo
Introdução ao HTML - Parte 1 - O que é?, Títulos, Texto Simples e ParágrafoIntrodução ao HTML - Parte 1 - O que é?, Títulos, Texto Simples e Parágrafo
Introdução ao HTML - Parte 1 - O que é?, Títulos, Texto Simples e Parágrafo
 
Html Básico
Html BásicoHtml Básico
Html Básico
 
Programação Web com HTML e CSS
Programação Web com HTML e CSSProgramação Web com HTML e CSS
Programação Web com HTML e CSS
 
Xhtml 2011 - atualizado
Xhtml   2011 - atualizadoXhtml   2011 - atualizado
Xhtml 2011 - atualizado
 

Ähnlich wie Design com web standards

JavaScript - Aula Introdutória
JavaScript - Aula IntrodutóriaJavaScript - Aula Introdutória
JavaScript - Aula Introdutórialucasleite
 
Trabalho jQuery
Trabalho jQueryTrabalho jQuery
Trabalho jQuerygrupoucpel
 
Palestra / Efeitos Espetaculares Em Dhtml / SDD
Palestra / Efeitos Espetaculares Em Dhtml / SDDPalestra / Efeitos Espetaculares Em Dhtml / SDD
Palestra / Efeitos Espetaculares Em Dhtml / SDDhugodiasneto
 
T.I. - Tecnologia 3D
T.I. - Tecnologia 3DT.I. - Tecnologia 3D
T.I. - Tecnologia 3Dtaiane dias
 
Apresentação Minas - Desenvolvendo Sites
Apresentação Minas - Desenvolvendo SitesApresentação Minas - Desenvolvendo Sites
Apresentação Minas - Desenvolvendo Sitesthiagolima
 
Javascript
JavascriptJavascript
Javascriptnasjo
 
XHTML, CSS e Semântica
XHTML, CSS e SemânticaXHTML, CSS e Semântica
XHTML, CSS e SemânticaAmanda Sposito
 
Tele cine mozer
Tele cine mozerTele cine mozer
Tele cine mozerJBSO
 
Aula html
Aula htmlAula html
Aula htmlSuissa
 
Apresentação do Curso Primeiros Passos na Web com HTML e CSS - Profite e Univ...
Apresentação do Curso Primeiros Passos na Web com HTML e CSS - Profite e Univ...Apresentação do Curso Primeiros Passos na Web com HTML e CSS - Profite e Univ...
Apresentação do Curso Primeiros Passos na Web com HTML e CSS - Profite e Univ...Uni Buscapé Company
 
Html5 - Notas de aula
Html5 - Notas de aulaHtml5 - Notas de aula
Html5 - Notas de aulaclodiney cruz
 
#DeveloperDay - Front-end API html5
#DeveloperDay - Front-end API html5#DeveloperDay - Front-end API html5
#DeveloperDay - Front-end API html5Leandro Santos
 
Trabalho de HTML, CSS e JavaScript - Eduardo Bertolucci - UNOPAR 2010
Trabalho de HTML, CSS e JavaScript - Eduardo Bertolucci - UNOPAR 2010Trabalho de HTML, CSS e JavaScript - Eduardo Bertolucci - UNOPAR 2010
Trabalho de HTML, CSS e JavaScript - Eduardo Bertolucci - UNOPAR 2010Eduardo Bertolucci
 
Introdução ao Web Design: Aula 5 - HTML (part. 1)
Introdução ao Web Design: Aula 5 - HTML (part. 1)Introdução ao Web Design: Aula 5 - HTML (part. 1)
Introdução ao Web Design: Aula 5 - HTML (part. 1)Gustavo Zimmermann
 

Ähnlich wie Design com web standards (20)

JavaScript - Aula Introdutória
JavaScript - Aula IntrodutóriaJavaScript - Aula Introdutória
JavaScript - Aula Introdutória
 
XHTML e CSS
XHTML e CSSXHTML e CSS
XHTML e CSS
 
Trabalho jQuery
Trabalho jQueryTrabalho jQuery
Trabalho jQuery
 
Palestra / Efeitos Espetaculares Em Dhtml / SDD
Palestra / Efeitos Espetaculares Em Dhtml / SDDPalestra / Efeitos Espetaculares Em Dhtml / SDD
Palestra / Efeitos Espetaculares Em Dhtml / SDD
 
T.I. - Tecnologia 3D
T.I. - Tecnologia 3DT.I. - Tecnologia 3D
T.I. - Tecnologia 3D
 
Apresentação Minas - Desenvolvendo Sites
Apresentação Minas - Desenvolvendo SitesApresentação Minas - Desenvolvendo Sites
Apresentação Minas - Desenvolvendo Sites
 
Javascript
JavascriptJavascript
Javascript
 
XHTML, CSS e Semântica
XHTML, CSS e SemânticaXHTML, CSS e Semântica
XHTML, CSS e Semântica
 
Tele cine mozer
Tele cine mozerTele cine mozer
Tele cine mozer
 
Aula html
Aula htmlAula html
Aula html
 
Apresentação do Curso Primeiros Passos na Web com HTML e CSS - Profite e Univ...
Apresentação do Curso Primeiros Passos na Web com HTML e CSS - Profite e Univ...Apresentação do Curso Primeiros Passos na Web com HTML e CSS - Profite e Univ...
Apresentação do Curso Primeiros Passos na Web com HTML e CSS - Profite e Univ...
 
Web Standards
Web StandardsWeb Standards
Web Standards
 
Html5 - Notas de aula
Html5 - Notas de aulaHtml5 - Notas de aula
Html5 - Notas de aula
 
Xml
XmlXml
Xml
 
15
1515
15
 
Html capitulo 07
Html   capitulo 07Html   capitulo 07
Html capitulo 07
 
#DeveloperDay - Front-end API html5
#DeveloperDay - Front-end API html5#DeveloperDay - Front-end API html5
#DeveloperDay - Front-end API html5
 
Trabalho de HTML, CSS e JavaScript - Eduardo Bertolucci - UNOPAR 2010
Trabalho de HTML, CSS e JavaScript - Eduardo Bertolucci - UNOPAR 2010Trabalho de HTML, CSS e JavaScript - Eduardo Bertolucci - UNOPAR 2010
Trabalho de HTML, CSS e JavaScript - Eduardo Bertolucci - UNOPAR 2010
 
Introdução ao Web Design: Aula 5 - HTML (part. 1)
Introdução ao Web Design: Aula 5 - HTML (part. 1)Introdução ao Web Design: Aula 5 - HTML (part. 1)
Introdução ao Web Design: Aula 5 - HTML (part. 1)
 
Apresentando o HTML
Apresentando o HTMLApresentando o HTML
Apresentando o HTML
 

Design com web standards

  • 1. DESIGN COM WEB STANDARDS Bruno Abrantes Monday, February 9, 2009
  • 3. SPAGHETTI CODE Layouts complexos, com tabelas dentro de tabelas, <font> tags e outras redundâncias duplicam ou triplicam a largura de banda necessária para uma página ser carregada. Sempre que surge um novo browser ou dispositivo, é provavelmente necessário criar mais uma versão da página. Monday, February 9, 2009
  • 4. WEB STANDARDS A partir de 2000, os browsers começaram a suportar tecnologias (CSS, XHTML, ECMAScript) desenvolvidas pela W3C e outros órgãos. Monday, February 9, 2009
  • 5. UTILIZAR STANDARDS Reduz o tempo de loading das páginas; Aumenta a acessibilidade, sem necessidade de sacrificar a estética e usabilidade; Simplifica eventuais redesigns. Monday, February 9, 2009
  • 6. UTILIZAR STANDARDS Permite suportar múltiplos browsers sem ter de criar múltiplas versões da página; Separa o conteúdo da apresentação; Assegura que as páginas continuarão a funcionar no futuro; Monday, February 9, 2009
  • 7. SUCK.COM 1996 Monday, February 9, 2009
  • 8. SEPARAÇÃO DE COMPONENTES Conteúdo Monday, February 9, 2009
  • 9. CONTEÚDO O elemento mais importante da página. É estruturado com recurso a (X)HTML. O conteúdo deve ser estruturado semanticamente. Monday, February 9, 2009
  • 10. DTD Um DTD, ou Document Type Definition, diz ao browser como fazer o render de um documento. http://www.w3.org/QA/2002/04/valid-dtd-list.html Não especificar um DTD ou fazê-lo de forma errada faz com que o browser utilize o quirks mode em vez do standards compliant mode no rendering da página. Monday, February 9, 2009
  • 11. XHTML 1.0 STRICT No SAPO Campus planeamos utilizar XHTML 1.0 Strict; Linguagem de transição entre o HTML e o XML; Elementos e atributos de apresentação e comportamento (FONT, BGCOLOR, TARGET) são deprecados. Monday, February 9, 2009
  • 12. SEMANTIC MARKUP Os dados são formatados de acordo com o seu significado. Assim, um título utiliza diferentes tags de Heading (<h1>, <h2>, <h3>, etc.) consoante a sua importância. Os nomes escolhidos para ids ou classes devem também revelar o significado ao invés do aspecto (class=”highlight” em vez de class=”yellow”). Monday, February 9, 2009
  • 13. SEMANTIC MARKUP As classes podem ser genéricas, para descrever estilos abstractos e repetitivos (ex: .clear, .left, .right, etc.) Regra geral, classes devem ser reutilizadas em vários elementos na página, e ids devem ser utilizados em elementos únicos; Monday, February 9, 2009
  • 14. ESTRUTURA O código deve ser correctamente indentado, facilitando a sua leitura e manutenção; As tags devem ser fechadas na ordem correcta, ou seja: <strong><a href=”teste.html”>Teste</a></strong> em vez de: <strong><a href=”teste.html”>Teste</a></strong> Monday, February 9, 2009
  • 15. VALID MARKUP O XHTML foi desenhado tendo em mente a portabilidade. Código sem erros ou elementos inválidos funciona correctamente em browsers, screen readers, dispositivos móveis, etc. Monday, February 9, 2009
  • 16. SEPARAÇÃO DE COMPONENTES Apresentação Monday, February 9, 2009
  • 17. APRESENTAÇÃO As linguagens de apresentação (CSS1, CSS2, ...) formatam a página web, controlando aspectos como a tipografia, a cor, o posicionamento, etc. Como a apresentação está separada da estrutura, é possível alterar uma sem afectar a outra. O mesmo layout pode ser aplicado a várias páginas sem esforço, e pequenas alterações (como alterar o tamanho do texto) podem ser conseguidas em segundos em vez de horas. Monday, February 9, 2009
  • 18. APRESENTAÇÃO É possível criar folhas de estilo que suportem diferentes tipos de media; Assim, é fácil criar uma versão da página para impressão, sem que para isso seja necessário reescrever todo o código; Ou ainda uma versão mobile, com menos gráficos e uma interface ligeiramente diferente; Tudo isto sem alterar o XHTML! Monday, February 9, 2009
  • 19. SEPARAÇÃO DE COMPONENTES Comportamento Monday, February 9, 2009
  • 20. COMPORTAMENTO O DOM (Document Object Model) proposto pela W3C funciona com XHTML, CSS, e ECMAScript 262. O ECMAScript é a versão standard do Javascript, o que significa que é possível programar comportamentos avançados que funcionam em todos os browsers. Acaba assim o Javascript que só funciona em Netscape, ou o ActiveX e JScript para IE. Monday, February 9, 2009
  • 21. Imagem retirada de http://alistapart.com PROGRESSIVE ENHANCEMENT Monday, February 9, 2009
  • 22. PROGRESSIVE ENHANCEMENT Origina do princípio de Graceful Degradation; No entanto, segue a direcção oposta; Deve ser providenciada uma experiência “normal” para browsers datados. Isto não significa que devamos comprometer a usabilidade da página; Monday, February 9, 2009
  • 23. PROGRESSIVE ENHANCEMENT Através de técnicas de CSS avançadas, é possível melhorar a experiência dos utilizadores com browsers modernos. Monday, February 9, 2009
  • 24. <form id=quot;contact-formquot; action=quot;#quot; method=quot;postquot;> <fieldset> <legend>Contact Us</legend> <p>Send us a message. All fields are required.</p> <ol> <li> <label for=quot;contact-namequot;>Name</label> <input type=quot;textquot; id=quot;contact-namequot; name=quot;namequot; /> </li> <li> <label for=quot;contact-emailquot;>Email</label> <input type=quot;textquot; id=quot;contact-emailquot; name=quot;emailquot; /> </li> <li> <label for=quot;contact-messagequot;>Message</label> <textarea id=quot;contact-messagequot; name=quot;messagequot; rows=quot;4quot; » cols=quot;30quot;></textarea> </li> </ol> Exemplo retirado de http://alistapart.com <button type=quot;submitquot;>Send It</button> </fieldset> </form> PROGRESSIVE ENANCHEMENT Um exemplo Monday, February 9, 2009
  • 25. PROGRESSIVE ENHANCEMENT Neste formulário, o normal seria inserir os “:” dentro das tags <label>; No entanto, isto não acrescenta nenhuma informação necessária, e tem apenas uma função visual. Monday, February 9, 2009
  • 26. PROGRESSIVE ENHANCEMENT Utilizando uma propriedade da spec 2.1 de CSS, content, os “:” podem ser automaticamente gerados: label:after {content: quot;:quot;;} Isto significa que, seguido ao conteúdo de qualquer <label>, é inserido dinamicamente o caracter “:”; Browsers mais antigos não suportam esta propriedade, mas a técnica “degrada” facilmente porque os “:” não são essenciais. Monday, February 9, 2009

Hinweis der Redaktion

  1. Suck.com, conte&#xFA;do na primeira p&#xE1;gina, script em Perl que contava os caracteres e inseria um <p>
  2. Lan&#xE7;ar a discuss&#xE3;o entre XHTML e HTML
  3. quirks mode causes bugs and is archaic and slow
  4. N&#xE3;o devemos utilizar uma tag <h1> porque queremos que o conte&#xFA;do apare&#xE7;a &#x201C;grande&#x201D;, mas sim porque &#xE9; o t&#xED;tulo mais importante na p&#xE1;gina! Regra geral, classes s&#xE3;o para elementos reutiliz&#xE1;veis e ids para elementos &#xFA;nicos.
  5. N&#xE3;o devemos utilizar uma tag <h1> porque queremos que o conte&#xFA;do apare&#xE7;a &#x201C;grande&#x201D;, mas sim porque &#xE9; o t&#xED;tulo mais importante na p&#xE1;gina! Regra geral, classes s&#xE3;o para elementos reutiliz&#xE1;veis e ids para elementos &#xFA;nicos.
  6. O DOM &#xE9; uma API que descreve os objectos presentes numa p&#xE1;gina. &#xC9; o que permite ao Javascript seleccionar elementos numa p&#xE1;gina, inserir informa&#xE7;&#xE3;o dinamicamente, etc.
  7. Graceful Degradation: Providenciar uma experi&#xEA;ncia de fallback caso haja um erro