SlideShare una empresa de Scribd logo
1 de 32
Descargar para leer sin conexión
quinta-feira, 15 de março de 12
HTML5 ESSENCIAL
                                  Fundamentos de todo serviço na Web




quinta-feira, 15 de março de 12
EMENTA
    • Fundamentos de Web
    • Documentos HTML
    • Conteúdo
    • Hipermídia
    • Semântica
    • Desempenho




                                    3
quinta-feira, 15 de março de 12
O QUE VEREMOS AGORA
    • Fundamentos da Web
    • Documentos HTML
    • Conteúdo
          •   Section, div, span, aside, parágrafos, cabeçalhos e rodapé
          •   Listas e tabelas
          •   Formulários (campos e atributos)
          •   Forms 2.0
          •   Tags editáveis (contenteditable)
          •   IFrames
    • Hipermídia
    • Semântica



                                                      4
quinta-feira, 15 de março de 12
TABELAS
                  • Estrutura          para definição de dados tabulares
                       •    Não devem ser utilizadas para layout de páginas
                       •    Alguns atributos foram depreciados no XHTML e retirados no
                            HTML5 para evitar esse mau uso das tabelas
                       •    Tabelas são estruturas simétricas onde toda linha deve conter
                            sempre o mesmo número de colunas
                       •    <table> - Para a tabela
                       •    <tr> - Para linhas (table rows)
                       •    <td> - Para divisão em células das linhas (colunas)
                       •    <th> - Para células que representam cabeçalhos
                       •    <thead> - Para agrupar o cabeçalho da tabela
                       •    <tfoot> - Para agrupar o rodapé da tabela
                       •    <tbody> - Para agrupar o conteúdo geral da tabela


                                                         5
quinta-feira, 15 de março de 12
TABELAS

                                      Cursos da formação WebMobile Front-End Engineer
                                        Nome                  Módulo             Carga-horária
                                    HTML5 Essencial      I - Content & Design         28h
                                  Photoshop para Web     I - Content & Design         28h
                                  WebDesign com CSS3     I - Content & Design         32h
                                  Javascript Essencial   II - Web Applications        32h
                                   jQuery & jQueryUI     II - Web Applications        24h
                                    AJAX & HTML5         II - Web Applications        32h
                                        TOTAL                                        176h




                                                         6
quinta-feira, 15 de março de 12                                                                  <th>
<table>
                                               TABELAS
                                                                             <th colspan=“3”>


  <thead>

                            {         Cursos da formação WebMobile Front-End Engineer
                                        Nome                  Módulo               Carga-horária
                                                                                                   <tr>
                                                                                                   <tr>




                     {
                                    HTML5 Essencial      I - Content & Design           28h        <tr>
  <tbody>
                                  Photoshop para Web     I - Content & Design           28h        <tr>
                                  WebDesign com CSS3     I - Content & Design           32h        <tr>
                                  Javascript Essencial   II - Web Applications          32h        <tr>
                                   jQuery & jQueryUI     II - Web Applications          24h        <tr>
   <tfoot>                                                                                         <tr>
                                    AJAX & HTML5         II - Web Applications          32h
                              {         TOTAL                                          176h        <tr>

                                                         <th>           <td>




                                                         6
quinta-feira, 15 de março de 12                                                                    <th>
TABELAS
                  • Resposta               do exercício:
                      <table>
                           <thead>
                                  <tr>
                                    <th colspan=“3”>Cursos de formação WebMobile...</th>
                                  </tr>
                                  <tr>
                                    <th>Nome</th>
                                    <th>Módulo</th>
                                    <th>Carga-horária</th>
                                  </tr>
                           </thead>
                      ... continua



                                                             7
quinta-feira, 15 de março de 12
TABELAS
                  • Continuação                 do exercício:
                           <tfoot>                   <!-- curiosamente o tfoot vem antes do tbody -->
                                  <tr>
                                    <th>TOTAL</th>
                                    <th></th>        <!-- mesmo sem conteúdo a th deve existir -->
                                    <th>176h</th>
                                  </tr>
                           </tfoot>


                      ... continua




                                                             8
quinta-feira, 15 de março de 12
TABELAS
                  • Continuação                 do exercício:
                           <tbody>
                                  <tr>
                                    <th>HTML5 Essencial</th>
                                    <td> I - Content & Design</td>
                                    <th>28h</th>
                                                                       Apenas um trecho do <tbody>
                                  </tr>                              Lembrando de fechar a tag <table>
                                  <tr>
                                    <th>Photoshop para Web</th>
                                    <td> I - Content & Design</td>
                                    <th>28h</th>
                                  </tr>
                           </tbody>



                                                               9
quinta-feira, 15 de março de 12
TABELAS ACESSÍVEIS
                       •    <caption> - Para se definir o título da tabela. É em geral
                            exibido centralizado acima da tabela. Muito útil para
                            acessibilidade
                       •    Atributo summary de <table> - Atributo não visual mas útil
                            para leitores de tela. Nele, você deve expor a finalidade da
                            tabela e eventualmente alguma particularidade se ela for uma
                            tabela complexa
                       •    Atributo abbr em células <td> ou <th> - Atributo para
                            abreviaturas de conteúdo que podem ser mais extensos
                       •    Atributo id de células - Atributo de uso geral para identificação
                            de uma tag. Útil para ser referenciado por atributos headers
                       •    Atributo headers em células - Atributo que referencia id(s) de
                            alguma(s) outra(s) célula(s) que lhe servirá(ão) de cabeçalho




                                                        10
quinta-feira, 15 de março de 12
TABELAS ACESSÍVEIS
                  • Escopo               de células de cabeçalho (<th>)
                       •    Células (em geral de cabeçalho <th>) podem possuir o
                            atributo scope com um dos seguintes valores:
                             •    row - Diz que a célula de cabeçalho fala sobre uma linha
                             •    col - Diz que a célula de cabeçalho fala sobre uma coluna
                             •    rowgroup - O mesmo que row, mas fala sobre <rowgroup>
                             •    colgroup - O mesmo que col, mas fala sobre <colgroup>




                                                               11
quinta-feira, 15 de março de 12
TABELAS ACESSÍVEIS
            • Agrupamento                de colunas ou linhas
                 •    Agrupamentos são feitos através das tags <colgroup> para agrupar
                      colunas ou <rowgroup> para agrupar linhas.
                 •    Tags <colgroup> e <rowgroup> podem conter elementos (tags
                      internas) <col> ou o atributo span. Ex:
                       •   <colgroup span=“3”></colgroup> ou
                       •   <colgroup>
                              <col />
                              <col />
                           </colgroup>
                 •    Ao criar agrupamentos de colunas/linhas, é possível adicionar estilos
                      a todas as células agrupadas
                 •    A tag <col> não possui corpo, ela só é vantagem sobre o atributo
                      span caso haja alguma particularidade em alguma coluna.




                                                      12
quinta-feira, 15 de março de 12
13
quinta-feira, 15 de março de 12
thead e tfoot




                                  13
quinta-feira, 15 de março de 12
14
quinta-feira, 15 de março de 12
TABELAS
                  • Material   de estudo só sobre tabelas e
                      acessibilidade
                       •    Cartilha sobre tabelas e acessibilidade do Governo
                            Federal - http://www.governoeletronico.gov.br/biblioteca/
                            arquivos/tabelas-acessiveis
                       •    Meste Maujor, leitura obrigatória - http://www.maujor.com/
                            tutorial/actables.php
                       •    W3Schools, a principal referência sobre HTML na Web -
                            http://www.w3schools.com/html/html_tables.asp




                                                       15
quinta-feira, 15 de março de 12
FORMULÁRIOS
        • Formulários    são agrupamentos de tags que servem
             para obter dados do usuário
              •   Todo conjunto de tags deve ser agrupado pela tag <form></form>
              •   A maioria dos controles de entrada é escrita pela tag <input />
              •   É possível e recomendado agrupar campos de formulário com a tag
                  <fieldset></fieldset>
              •   Agrupamentos com <fieldset> podem conter legendas
                  <legend></legend>
                   •    As tags <legend> se existirem devem ser o primeiro nó filho de <fieldset>
              •   Simples textos que referenciam algum campo podem ser envolvidos
                  na tag <label></label>
                   •    Ao clicarmos em um texto envolto em <label> seu campo associado
                        ganhará foco (ou será marcado, no caso de checkboxes ou radio buttons)




                                                         16
quinta-feira, 15 de março de 12
FORMULÁRIOS
        • Submeter     formulários significa enviar uma requisição
             ao servidor
              •   O método da requisição é escolhido pelo atributo method da tag
                  <form>
                   •    A ausência do atributo method significa requisição GET.
              •   Outro método importante da tag <form> é o action, nele, deve ser
                  informada a URL para onde será enviada a requisição
                   •    A ausência do action faz o browser requisitar a mesma URL utilizada para
                        obter a página atual




                                                          17
quinta-feira, 15 de março de 12
FORMULÁRIOS
                  • Exemplo              Simples:
                      <form method="POST">
                             <fieldset>
                                  <legend>Campos de um formulário de logon</legend>
                                  <label>Login <input type="text"/></label>
                                  <label>Senha <input type="password"/></label>
                                  <label><input type="checkbox"/> Lembrar login</label>
                                  <input type=“button” value=“Ok” />
                            </fieldset>
                      </form>



                                                          18
quinta-feira, 15 de março de 12
FORMULÁRIOS
                  • Tipos            de entrada <input>
                       •    text - Entradas simples de texto em única linha
                       •    password - Entradas de texto como senhas
                             •    Os browsers emitem pontos ou asteriscos no lugar do que foi digitado
                             •    Os browsers não permitem copiar seu conteúdo digitado
                             •    Mesmo assim, seu conteúdo é transmitido ao browser em texto claro
                       •    checkbox - Campo onde só é possível marcar ou desmarcar
                       •    radio - Campo semelhante ao checkbox mas que torna a
                            escolha intercambiável entre componentes com o mesmo
                            nome
                             •    Ex: <input type="radio" name="sexo" value="M" /> Masculino
                                      <input type="radio" name="sexo" value="F" /> Feminino




                                                               19
quinta-feira, 15 de março de 12
FORMULÁRIOS
                  • Tipos            de entrada <input> como botões
                       •    button - Exibe um botão sem ação associada
                             •    Ex: <input type="button" name="enviar" value="OK" />
                       •    submit - Exibe um botão que submete o formulário quando é
                            acionado (clicado)
                       •    reset - Exibe um botão que “limpa” o formulário quando é
                            acionado
                             •    Na verdade não “limpa” mas reinicia os campos do formulário para
                                  seus valores originais, sem eventuais alterações do usuário
                             •    Este botão não é enviado ao servidor quando o formulário é
                                  submetido




                                                               20
quinta-feira, 15 de março de 12
FORMULÁRIOS
                  • Outros               tipos de entrada <input>
                       •    image - Funciona como um submit mas precisa carregar uma
                            imagem em seu atributo src.
                  •   Ex: <input type="image" name="mapa" src="mapa.png" />
                       •    file - Exibe um controle para escolha de algum arquivo na
                            máquina do usuário para ser enviado ao servidor
                                  •   Caso haja um input file no formulário
                                      a tag form precisa ter method="POST" e
                                      é necessário informar um novo atributo
                                      enctype da seguinte forma:



                                  •   <form method="POST" enctype="multipart/form-data">

                       •    hidden - Cria a referência a um campo invisível
                  •   Útil para recuperação de informações geradas pelo próprio servidor




                                                                      21
quinta-feira, 15 de março de 12
FORMULÁRIOS




                                       22
quinta-feira, 15 de março de 12
FORMULÁRIOS
                  • Outros        campos




                                           22
quinta-feira, 15 de março de 12
FORMULÁRIOS
                  • Outros             campos
                       •    <textarea></textarea>
                             •    Campo de texto que envolve mais de uma linha
                             •    O atributo rows define o número de linhas




                                                              22
quinta-feira, 15 de março de 12
FORMULÁRIOS
                  • Outros             campos
                       •    <textarea></textarea>
                             •    Campo de texto que envolve mais de uma linha
                             •    O atributo rows define o número de linhas
                       •    <select></select>
                             •    Também chamado de combobox
                             •    Menu suspenso de lista de valores pré-definidos
                             •    Requer tags <option></option> para representar cada valor
                             •    Ex.: <select name="estado" multiple rows="3">
                                         <option value="PE">Pernambuco</option>
                                         <option value="PB">Paraíba</option>
                                         <option value="RN">Rio Grande do Norte</option>
                                         <option value="AL">Alagoas</option>
                                       </select>
                             •    O atributo rows o transforma em listbox
                             •    O atributo multiple permite a seleção de mais de uma opção


                                                               22
quinta-feira, 15 de março de 12
FORMULÁRIOS
                  • Atributos              comuns em todo campo de formulário
                       •    name - Nome do campo.
                             •    Campos sem name não são enviados ao servidor
                       •    value - Valor do campo.
                       •    disabled - Desabilita o campo.
                             •    É útil em geral para ser manipulado via Javascript e gerar efeitos de
                                  habilitar ou desabilitar algum campo baseado em ações do usuário
                             •    Campos desabilitados não são enviados ao servidor
                       •    readonly - Torna o campo somente leitura.
                             •    Semelhante ao disabled, mas envia o campo para o servidor
                       •    required - Torna o campo requerido (HTML5)
                             •    Faz o browser verificar o preenchimento do campo para permitir
                                  submeter o formulário
                       •    maxlength - Para o limite de caracteres permitidos no campo

                                                                23
quinta-feira, 15 de março de 12
FORMS 2.0
                  • Após   muitos anos sem evoluções nessa área, o
                      Opera iniciou um processo de criação de novos
                      campos de formulário
                       •    color - Escolha de cores
                       •    date - Escolha de data
                       •    datetime - Escolha de data e hora
                       •    datetime-local - Escolha de data e hora local
                       •    email - Escrita de email (há uma validação da entrada)
                       •    month - Escolha de mês
                       •    number - Exibição de números como spinner


                       •    continua ...



                                                       24
quinta-feira, 15 de março de 12
FORMS 2.0
                  • Após   muitos anos sem evoluções nessa área, o
                      Opera iniciou um processo de criação de novos
                      campos de formulário
                       •    range - Exibição de paleta de slider
                       •    search - Campo de texto para busca
                       •    tel - Campo de texto para telefone
                       •    time - Escolha de hora
                       •    url - Campo de texto para URL
                       •    week - Escolha de semana




                                                        25
quinta-feira, 15 de março de 12
FORMS 2.0
                  • Outra            tag para formulários FORMS 2.0
                       •    <keygen> - Tag que envia uma chave pública para o servidor
                            poder utilizar para cifrar o conteúdo. Só quem gera uma chave
                            pública detém sua chave privada capaz de decifrar
                             •    Essa tag gera um combobox para o usuário escolher a quantidade de
                                  bits do tamanho dessa chave




                                                             26
quinta-feira, 15 de março de 12
quinta-feira, 15 de março de 12

Más contenido relacionado

Destacado

Desenvolvimento-web-com-html-css-e-javascript
Desenvolvimento-web-com-html-css-e-javascriptDesenvolvimento-web-com-html-css-e-javascript
Desenvolvimento-web-com-html-css-e-javascriptManuel Fernando
 
Espionagem e Software Livre
Espionagem e Software LivreEspionagem e Software Livre
Espionagem e Software LivreÁtila Camurça
 
Html5 - O futuro da Web
Html5 - O futuro da WebHtml5 - O futuro da Web
Html5 - O futuro da WebJose Berardo
 
O que há de novo no PHP 5.3
O que há de novo no PHP 5.3O que há de novo no PHP 5.3
O que há de novo no PHP 5.3Jose Berardo
 
Html5 - Estrutura Básica
Html5 - Estrutura BásicaHtml5 - Estrutura Básica
Html5 - Estrutura BásicaAndré Aguiar
 
Certificacoes Desenvolvedores
Certificacoes DesenvolvedoresCertificacoes Desenvolvedores
Certificacoes DesenvolvedoresJose Berardo
 
HTML5 & CSS3 - A Evolução da Web
HTML5 & CSS3 - A Evolução da WebHTML5 & CSS3 - A Evolução da Web
HTML5 & CSS3 - A Evolução da WebManoel dos Santos
 
Curso de css3 unidade 1 - introdução ao css
Curso de css3   unidade 1 - introdução ao cssCurso de css3   unidade 1 - introdução ao css
Curso de css3 unidade 1 - introdução ao cssLéo Dias
 
HTML5, JAVASCRIPT E JQUERY
HTML5, JAVASCRIPT E JQUERYHTML5, JAVASCRIPT E JQUERY
HTML5, JAVASCRIPT E JQUERYRenato Melo
 
javscript para iniciantes
javscript para iniciantesjavscript para iniciantes
javscript para iniciantesbradock1964
 
Campanhas Inovadoras e Criativas na Web
Campanhas Inovadoras e Criativas na WebCampanhas Inovadoras e Criativas na Web
Campanhas Inovadoras e Criativas na WebGustavo Zimmermann
 
10 Java Script - Exemplos práticos
10 Java Script - Exemplos práticos10 Java Script - Exemplos práticos
10 Java Script - Exemplos práticosCentro Paula Souza
 
JavaScript Robotics: o que acontece quando o hardware se encontra com o JavaS...
JavaScript Robotics: o que acontece quando o hardware se encontra com o JavaS...JavaScript Robotics: o que acontece quando o hardware se encontra com o JavaS...
JavaScript Robotics: o que acontece quando o hardware se encontra com o JavaS...Felipe de Albuquerque
 

Destacado (20)

Desenvolvimento-web-com-html-css-e-javascript
Desenvolvimento-web-com-html-css-e-javascriptDesenvolvimento-web-com-html-css-e-javascript
Desenvolvimento-web-com-html-css-e-javascript
 
Espionagem e Software Livre
Espionagem e Software LivreEspionagem e Software Livre
Espionagem e Software Livre
 
Html5 - O futuro da Web
Html5 - O futuro da WebHtml5 - O futuro da Web
Html5 - O futuro da Web
 
Engenharia Social
Engenharia SocialEngenharia Social
Engenharia Social
 
O que há de novo no PHP 5.3
O que há de novo no PHP 5.3O que há de novo no PHP 5.3
O que há de novo no PHP 5.3
 
Html5 - Estrutura Básica
Html5 - Estrutura BásicaHtml5 - Estrutura Básica
Html5 - Estrutura Básica
 
Introdução ao CSS
Introdução ao CSSIntrodução ao CSS
Introdução ao CSS
 
Certificacoes Desenvolvedores
Certificacoes DesenvolvedoresCertificacoes Desenvolvedores
Certificacoes Desenvolvedores
 
Web e HTML5
Web e HTML5Web e HTML5
Web e HTML5
 
HTML5 & CSS3 - A Evolução da Web
HTML5 & CSS3 - A Evolução da WebHTML5 & CSS3 - A Evolução da Web
HTML5 & CSS3 - A Evolução da Web
 
Curso de css3 unidade 1 - introdução ao css
Curso de css3   unidade 1 - introdução ao cssCurso de css3   unidade 1 - introdução ao css
Curso de css3 unidade 1 - introdução ao css
 
Html5 Aula 6
Html5 Aula 6Html5 Aula 6
Html5 Aula 6
 
HTML5, JAVASCRIPT E JQUERY
HTML5, JAVASCRIPT E JQUERYHTML5, JAVASCRIPT E JQUERY
HTML5, JAVASCRIPT E JQUERY
 
javscript para iniciantes
javscript para iniciantesjavscript para iniciantes
javscript para iniciantes
 
Html5 aula 02
Html5 aula 02Html5 aula 02
Html5 aula 02
 
Campanhas Inovadoras e Criativas na Web
Campanhas Inovadoras e Criativas na WebCampanhas Inovadoras e Criativas na Web
Campanhas Inovadoras e Criativas na Web
 
Redes linux excerto
Redes linux excertoRedes linux excerto
Redes linux excerto
 
10 Java Script - Exemplos práticos
10 Java Script - Exemplos práticos10 Java Script - Exemplos práticos
10 Java Script - Exemplos práticos
 
JavaScript Robotics: o que acontece quando o hardware se encontra com o JavaS...
JavaScript Robotics: o que acontece quando o hardware se encontra com o JavaS...JavaScript Robotics: o que acontece quando o hardware se encontra com o JavaS...
JavaScript Robotics: o que acontece quando o hardware se encontra com o JavaS...
 
Html5 aula 01
Html5 aula 01Html5 aula 01
Html5 aula 01
 

Similar a HTML5 Fundamentos Web

HTML - HyperText Markup Language - Review
HTML - HyperText Markup Language - ReviewHTML - HyperText Markup Language - Review
HTML - HyperText Markup Language - ReviewIsrael Messias
 
Construindo aplicações web com WebMatrix e Razor
Construindo aplicações web com WebMatrix e RazorConstruindo aplicações web com WebMatrix e Razor
Construindo aplicações web com WebMatrix e RazorFabrício Lopes Sanchez
 
Wicket - Brincando com Objetos
Wicket - Brincando com ObjetosWicket - Brincando com Objetos
Wicket - Brincando com ObjetosBruno Borges
 
As WCAG 1.0 e os Sítios Web das Instituições do Ensino Superior
As WCAG 1.0 e os Sítios Web das Instituições do Ensino SuperiorAs WCAG 1.0 e os Sítios Web das Instituições do Ensino Superior
As WCAG 1.0 e os Sítios Web das Instituições do Ensino SuperiorJorge Fernandes
 
Minicurso Iniciando no Mundo Front-End - Dia 02 - SASPI {5}
Minicurso Iniciando no Mundo Front-End - Dia 02 - SASPI {5}Minicurso Iniciando no Mundo Front-End - Dia 02 - SASPI {5}
Minicurso Iniciando no Mundo Front-End - Dia 02 - SASPI {5}Matheus Thomaz
 
Aula2 - Elementos Semânticos
Aula2 -  Elementos SemânticosAula2 -  Elementos Semânticos
Aula2 - Elementos SemânticosDorival Silva
 
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
 
Introdução de web
Introdução de webIntrodução de web
Introdução de webSedu
 
Aula html
Aula htmlAula html
Aula htmlSuissa
 
Aula 1 apresentação + html (tags)
Aula 1   apresentação + html (tags)Aula 1   apresentação + html (tags)
Aula 1 apresentação + html (tags)andreluizlc
 

Similar a HTML5 Fundamentos Web (20)

Html5 e css3
Html5 e css3Html5 e css3
Html5 e css3
 
USAR.pptx
USAR.pptxUSAR.pptx
USAR.pptx
 
HTML - HyperText Markup Language - Review
HTML - HyperText Markup Language - ReviewHTML - HyperText Markup Language - Review
HTML - HyperText Markup Language - Review
 
Html5
Html5Html5
Html5
 
Construindo aplicações web com WebMatrix e Razor
Construindo aplicações web com WebMatrix e RazorConstruindo aplicações web com WebMatrix e Razor
Construindo aplicações web com WebMatrix e Razor
 
Apresentação para aula de HTML básico
Apresentação para aula de HTML básicoApresentação para aula de HTML básico
Apresentação para aula de 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
 
Aula 2 - Conceitos básicos
Aula 2 - Conceitos básicosAula 2 - Conceitos básicos
Aula 2 - Conceitos básicos
 
Apostila XHTML
Apostila XHTMLApostila XHTML
Apostila XHTML
 
Curso de HTML5 CSS3 e JS
Curso de HTML5 CSS3 e JSCurso de HTML5 CSS3 e JS
Curso de HTML5 CSS3 e JS
 
Wicket - Brincando com Objetos
Wicket - Brincando com ObjetosWicket - Brincando com Objetos
Wicket - Brincando com Objetos
 
As WCAG 1.0 e os Sítios Web das Instituições do Ensino Superior
As WCAG 1.0 e os Sítios Web das Instituições do Ensino SuperiorAs WCAG 1.0 e os Sítios Web das Instituições do Ensino Superior
As WCAG 1.0 e os Sítios Web das Instituições do Ensino Superior
 
Minicurso Iniciando no Mundo Front-End - Dia 02 - SASPI {5}
Minicurso Iniciando no Mundo Front-End - Dia 02 - SASPI {5}Minicurso Iniciando no Mundo Front-End - Dia 02 - SASPI {5}
Minicurso Iniciando no Mundo Front-End - Dia 02 - SASPI {5}
 
Aula html5
Aula html5Aula html5
Aula html5
 
Aula2 - Elementos Semânticos
Aula2 -  Elementos SemânticosAula2 -  Elementos Semânticos
Aula2 - Elementos Semânticos
 
HC - HTML - CSS.pdf
HC - HTML - CSS.pdfHC - HTML - CSS.pdf
HC - HTML - CSS.pdf
 
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
 
Introdução de web
Introdução de webIntrodução de web
Introdução de web
 
Aula html
Aula htmlAula html
Aula html
 
Aula 1 apresentação + html (tags)
Aula 1   apresentação + html (tags)Aula 1   apresentação + html (tags)
Aula 1 apresentação + html (tags)
 

Más de Jose Berardo

HTML5 Mobile - Aula 3 - Device Orientation
HTML5 Mobile - Aula 3 - Device OrientationHTML5 Mobile - Aula 3 - Device Orientation
HTML5 Mobile - Aula 3 - Device OrientationJose Berardo
 
Oracle Certified Associate - Java Programmer I - aula 2
Oracle Certified Associate - Java Programmer I - aula 2Oracle Certified Associate - Java Programmer I - aula 2
Oracle Certified Associate - Java Programmer I - aula 2Jose Berardo
 
Java Certified Associate Aula 1
Java Certified Associate Aula 1Java Certified Associate Aula 1
Java Certified Associate Aula 1Jose Berardo
 
Curso de Android Aula 4
Curso de Android Aula 4Curso de Android Aula 4
Curso de Android Aula 4Jose Berardo
 
Curso de Android - aula 3
Curso de Android - aula 3Curso de Android - aula 3
Curso de Android - aula 3Jose Berardo
 
Curso de Android - aula 2
Curso de Android - aula 2Curso de Android - aula 2
Curso de Android - aula 2Jose Berardo
 
Curso de Google Android - Aula 1
Curso de Google Android - Aula 1Curso de Google Android - Aula 1
Curso de Google Android - Aula 1Jose Berardo
 
Curso de Java EE 6
Curso de Java EE 6Curso de Java EE 6
Curso de Java EE 6Jose Berardo
 

Más de Jose Berardo (11)

Html5 Aula 5
Html5 Aula 5Html5 Aula 5
Html5 Aula 5
 
Html5 Aula 4
Html5 Aula 4Html5 Aula 4
Html5 Aula 4
 
HTML5 Mobile - Aula 3 - Device Orientation
HTML5 Mobile - Aula 3 - Device OrientationHTML5 Mobile - Aula 3 - Device Orientation
HTML5 Mobile - Aula 3 - Device Orientation
 
Oracle Certified Associate - Java Programmer I - aula 2
Oracle Certified Associate - Java Programmer I - aula 2Oracle Certified Associate - Java Programmer I - aula 2
Oracle Certified Associate - Java Programmer I - aula 2
 
Java Certified Associate Aula 1
Java Certified Associate Aula 1Java Certified Associate Aula 1
Java Certified Associate Aula 1
 
Curso de Android Aula 4
Curso de Android Aula 4Curso de Android Aula 4
Curso de Android Aula 4
 
Curso de Android - aula 3
Curso de Android - aula 3Curso de Android - aula 3
Curso de Android - aula 3
 
Curso de Android - aula 2
Curso de Android - aula 2Curso de Android - aula 2
Curso de Android - aula 2
 
Curso de Google Android - Aula 1
Curso de Google Android - Aula 1Curso de Google Android - Aula 1
Curso de Google Android - Aula 1
 
Curso de Java EE 6
Curso de Java EE 6Curso de Java EE 6
Curso de Java EE 6
 
Certificacao Php
Certificacao PhpCertificacao Php
Certificacao Php
 

HTML5 Fundamentos Web

  • 1. quinta-feira, 15 de março de 12
  • 2. HTML5 ESSENCIAL Fundamentos de todo serviço na Web quinta-feira, 15 de março de 12
  • 3. EMENTA • Fundamentos de Web • Documentos HTML • Conteúdo • Hipermídia • Semântica • Desempenho 3 quinta-feira, 15 de março de 12
  • 4. O QUE VEREMOS AGORA • Fundamentos da Web • Documentos HTML • Conteúdo • Section, div, span, aside, parágrafos, cabeçalhos e rodapé • Listas e tabelas • Formulários (campos e atributos) • Forms 2.0 • Tags editáveis (contenteditable) • IFrames • Hipermídia • Semântica 4 quinta-feira, 15 de março de 12
  • 5. TABELAS • Estrutura para definição de dados tabulares • Não devem ser utilizadas para layout de páginas • Alguns atributos foram depreciados no XHTML e retirados no HTML5 para evitar esse mau uso das tabelas • Tabelas são estruturas simétricas onde toda linha deve conter sempre o mesmo número de colunas • <table> - Para a tabela • <tr> - Para linhas (table rows) • <td> - Para divisão em células das linhas (colunas) • <th> - Para células que representam cabeçalhos • <thead> - Para agrupar o cabeçalho da tabela • <tfoot> - Para agrupar o rodapé da tabela • <tbody> - Para agrupar o conteúdo geral da tabela 5 quinta-feira, 15 de março de 12
  • 6. TABELAS Cursos da formação WebMobile Front-End Engineer Nome Módulo Carga-horária HTML5 Essencial I - Content & Design 28h Photoshop para Web I - Content & Design 28h WebDesign com CSS3 I - Content & Design 32h Javascript Essencial II - Web Applications 32h jQuery & jQueryUI II - Web Applications 24h AJAX & HTML5 II - Web Applications 32h TOTAL 176h 6 quinta-feira, 15 de março de 12 <th>
  • 7. <table> TABELAS <th colspan=“3”> <thead> { Cursos da formação WebMobile Front-End Engineer Nome Módulo Carga-horária <tr> <tr> { HTML5 Essencial I - Content & Design 28h <tr> <tbody> Photoshop para Web I - Content & Design 28h <tr> WebDesign com CSS3 I - Content & Design 32h <tr> Javascript Essencial II - Web Applications 32h <tr> jQuery & jQueryUI II - Web Applications 24h <tr> <tfoot> <tr> AJAX & HTML5 II - Web Applications 32h { TOTAL 176h <tr> <th> <td> 6 quinta-feira, 15 de março de 12 <th>
  • 8. TABELAS • Resposta do exercício: <table> <thead> <tr> <th colspan=“3”>Cursos de formação WebMobile...</th> </tr> <tr> <th>Nome</th> <th>Módulo</th> <th>Carga-horária</th> </tr> </thead> ... continua 7 quinta-feira, 15 de março de 12
  • 9. TABELAS • Continuação do exercício: <tfoot> <!-- curiosamente o tfoot vem antes do tbody --> <tr> <th>TOTAL</th> <th></th> <!-- mesmo sem conteúdo a th deve existir --> <th>176h</th> </tr> </tfoot> ... continua 8 quinta-feira, 15 de março de 12
  • 10. TABELAS • Continuação do exercício: <tbody> <tr> <th>HTML5 Essencial</th> <td> I - Content & Design</td> <th>28h</th> Apenas um trecho do <tbody> </tr> Lembrando de fechar a tag <table> <tr> <th>Photoshop para Web</th> <td> I - Content & Design</td> <th>28h</th> </tr> </tbody> 9 quinta-feira, 15 de março de 12
  • 11. TABELAS ACESSÍVEIS • <caption> - Para se definir o título da tabela. É em geral exibido centralizado acima da tabela. Muito útil para acessibilidade • Atributo summary de <table> - Atributo não visual mas útil para leitores de tela. Nele, você deve expor a finalidade da tabela e eventualmente alguma particularidade se ela for uma tabela complexa • Atributo abbr em células <td> ou <th> - Atributo para abreviaturas de conteúdo que podem ser mais extensos • Atributo id de células - Atributo de uso geral para identificação de uma tag. Útil para ser referenciado por atributos headers • Atributo headers em células - Atributo que referencia id(s) de alguma(s) outra(s) célula(s) que lhe servirá(ão) de cabeçalho 10 quinta-feira, 15 de março de 12
  • 12. TABELAS ACESSÍVEIS • Escopo de células de cabeçalho (<th>) • Células (em geral de cabeçalho <th>) podem possuir o atributo scope com um dos seguintes valores: • row - Diz que a célula de cabeçalho fala sobre uma linha • col - Diz que a célula de cabeçalho fala sobre uma coluna • rowgroup - O mesmo que row, mas fala sobre <rowgroup> • colgroup - O mesmo que col, mas fala sobre <colgroup> 11 quinta-feira, 15 de março de 12
  • 13. TABELAS ACESSÍVEIS • Agrupamento de colunas ou linhas • Agrupamentos são feitos através das tags <colgroup> para agrupar colunas ou <rowgroup> para agrupar linhas. • Tags <colgroup> e <rowgroup> podem conter elementos (tags internas) <col> ou o atributo span. Ex: • <colgroup span=“3”></colgroup> ou • <colgroup> <col /> <col /> </colgroup> • Ao criar agrupamentos de colunas/linhas, é possível adicionar estilos a todas as células agrupadas • A tag <col> não possui corpo, ela só é vantagem sobre o atributo span caso haja alguma particularidade em alguma coluna. 12 quinta-feira, 15 de março de 12
  • 14. 13 quinta-feira, 15 de março de 12
  • 15. thead e tfoot 13 quinta-feira, 15 de março de 12
  • 16. 14 quinta-feira, 15 de março de 12
  • 17. TABELAS • Material de estudo só sobre tabelas e acessibilidade • Cartilha sobre tabelas e acessibilidade do Governo Federal - http://www.governoeletronico.gov.br/biblioteca/ arquivos/tabelas-acessiveis • Meste Maujor, leitura obrigatória - http://www.maujor.com/ tutorial/actables.php • W3Schools, a principal referência sobre HTML na Web - http://www.w3schools.com/html/html_tables.asp 15 quinta-feira, 15 de março de 12
  • 18. FORMULÁRIOS • Formulários são agrupamentos de tags que servem para obter dados do usuário • Todo conjunto de tags deve ser agrupado pela tag <form></form> • A maioria dos controles de entrada é escrita pela tag <input /> • É possível e recomendado agrupar campos de formulário com a tag <fieldset></fieldset> • Agrupamentos com <fieldset> podem conter legendas <legend></legend> • As tags <legend> se existirem devem ser o primeiro nó filho de <fieldset> • Simples textos que referenciam algum campo podem ser envolvidos na tag <label></label> • Ao clicarmos em um texto envolto em <label> seu campo associado ganhará foco (ou será marcado, no caso de checkboxes ou radio buttons) 16 quinta-feira, 15 de março de 12
  • 19. FORMULÁRIOS • Submeter formulários significa enviar uma requisição ao servidor • O método da requisição é escolhido pelo atributo method da tag <form> • A ausência do atributo method significa requisição GET. • Outro método importante da tag <form> é o action, nele, deve ser informada a URL para onde será enviada a requisição • A ausência do action faz o browser requisitar a mesma URL utilizada para obter a página atual 17 quinta-feira, 15 de março de 12
  • 20. FORMULÁRIOS • Exemplo Simples: <form method="POST"> <fieldset> <legend>Campos de um formulário de logon</legend> <label>Login <input type="text"/></label> <label>Senha <input type="password"/></label> <label><input type="checkbox"/> Lembrar login</label> <input type=“button” value=“Ok” /> </fieldset> </form> 18 quinta-feira, 15 de março de 12
  • 21. FORMULÁRIOS • Tipos de entrada <input> • text - Entradas simples de texto em única linha • password - Entradas de texto como senhas • Os browsers emitem pontos ou asteriscos no lugar do que foi digitado • Os browsers não permitem copiar seu conteúdo digitado • Mesmo assim, seu conteúdo é transmitido ao browser em texto claro • checkbox - Campo onde só é possível marcar ou desmarcar • radio - Campo semelhante ao checkbox mas que torna a escolha intercambiável entre componentes com o mesmo nome • Ex: <input type="radio" name="sexo" value="M" /> Masculino <input type="radio" name="sexo" value="F" /> Feminino 19 quinta-feira, 15 de março de 12
  • 22. FORMULÁRIOS • Tipos de entrada <input> como botões • button - Exibe um botão sem ação associada • Ex: <input type="button" name="enviar" value="OK" /> • submit - Exibe um botão que submete o formulário quando é acionado (clicado) • reset - Exibe um botão que “limpa” o formulário quando é acionado • Na verdade não “limpa” mas reinicia os campos do formulário para seus valores originais, sem eventuais alterações do usuário • Este botão não é enviado ao servidor quando o formulário é submetido 20 quinta-feira, 15 de março de 12
  • 23. FORMULÁRIOS • Outros tipos de entrada <input> • image - Funciona como um submit mas precisa carregar uma imagem em seu atributo src. • Ex: <input type="image" name="mapa" src="mapa.png" /> • file - Exibe um controle para escolha de algum arquivo na máquina do usuário para ser enviado ao servidor • Caso haja um input file no formulário a tag form precisa ter method="POST" e é necessário informar um novo atributo enctype da seguinte forma: • <form method="POST" enctype="multipart/form-data"> • hidden - Cria a referência a um campo invisível • Útil para recuperação de informações geradas pelo próprio servidor 21 quinta-feira, 15 de março de 12
  • 24. FORMULÁRIOS 22 quinta-feira, 15 de março de 12
  • 25. FORMULÁRIOS • Outros campos 22 quinta-feira, 15 de março de 12
  • 26. FORMULÁRIOS • Outros campos • <textarea></textarea> • Campo de texto que envolve mais de uma linha • O atributo rows define o número de linhas 22 quinta-feira, 15 de março de 12
  • 27. FORMULÁRIOS • Outros campos • <textarea></textarea> • Campo de texto que envolve mais de uma linha • O atributo rows define o número de linhas • <select></select> • Também chamado de combobox • Menu suspenso de lista de valores pré-definidos • Requer tags <option></option> para representar cada valor • Ex.: <select name="estado" multiple rows="3"> <option value="PE">Pernambuco</option> <option value="PB">Paraíba</option> <option value="RN">Rio Grande do Norte</option> <option value="AL">Alagoas</option> </select> • O atributo rows o transforma em listbox • O atributo multiple permite a seleção de mais de uma opção 22 quinta-feira, 15 de março de 12
  • 28. FORMULÁRIOS • Atributos comuns em todo campo de formulário • name - Nome do campo. • Campos sem name não são enviados ao servidor • value - Valor do campo. • disabled - Desabilita o campo. • É útil em geral para ser manipulado via Javascript e gerar efeitos de habilitar ou desabilitar algum campo baseado em ações do usuário • Campos desabilitados não são enviados ao servidor • readonly - Torna o campo somente leitura. • Semelhante ao disabled, mas envia o campo para o servidor • required - Torna o campo requerido (HTML5) • Faz o browser verificar o preenchimento do campo para permitir submeter o formulário • maxlength - Para o limite de caracteres permitidos no campo 23 quinta-feira, 15 de março de 12
  • 29. FORMS 2.0 • Após muitos anos sem evoluções nessa área, o Opera iniciou um processo de criação de novos campos de formulário • color - Escolha de cores • date - Escolha de data • datetime - Escolha de data e hora • datetime-local - Escolha de data e hora local • email - Escrita de email (há uma validação da entrada) • month - Escolha de mês • number - Exibição de números como spinner • continua ... 24 quinta-feira, 15 de março de 12
  • 30. FORMS 2.0 • Após muitos anos sem evoluções nessa área, o Opera iniciou um processo de criação de novos campos de formulário • range - Exibição de paleta de slider • search - Campo de texto para busca • tel - Campo de texto para telefone • time - Escolha de hora • url - Campo de texto para URL • week - Escolha de semana 25 quinta-feira, 15 de março de 12
  • 31. FORMS 2.0 • Outra tag para formulários FORMS 2.0 • <keygen> - Tag que envia uma chave pública para o servidor poder utilizar para cifrar o conteúdo. Só quem gera uma chave pública detém sua chave privada capaz de decifrar • Essa tag gera um combobox para o usuário escolher a quantidade de bits do tamanho dessa chave 26 quinta-feira, 15 de março de 12
  • 32. quinta-feira, 15 de março de 12