Notas Técnicas do zhaoJian

Curso IT Fundamentos HTML 015_Novos recursos HTML5

Aprendizado / Fundamentos HTML ~11642 palavras · 30 min de leitura - visualizações

Novos recursos HTML5

HTML5 é a versão mais recente do HTML, introduzindo muitas novas tags, atributos e funcionalidades, aumentando significativamente a capacidade e a interatividade da web.

Alguns novos recursos interessantes do HTML5:

  • Elemento canvas para desenho
  • Elementos video e audio para reprodução de mídia
  • Melhor suporte para armazenamento local offline
  • Novos elementos de conteúdo especial, como article, footer, header, nav, section
  • Novos controles de formulário, como calendar, date, time, email, url, search

<canvas>

O elemento HTML5 <canvas> é usado para desenhar gráficos em páginas da web. O elemento <canvas> é baseado na API de desenho JavaScript e pode ser usado para criar vários gráficos, incluindo gráficos, imagens, animações, etc.

Exemplo:

<canvas width="500" height="500">
Seu navegador não suporta a tag HTML5 canvas.
</canvas>
<script>
const canvas = document.querySelector("canvas");
// Obter o contexto de desenho
const ctx = canvas.getContext("2d");
// Desenhar círculo
ctx.beginPath();
ctx.arc(250, 250, 100, 0, 2 * Math.PI);
ctx.fillStyle = "yellow";
ctx.fill();
</script>

Efeito:

Efeito do exemplo


<svg>

O elemento SVG HTML5 é usado para criar gráficos SVG em páginas da web. Os gráficos SVG são gráficos vetoriais baseados em XML que podem ser dimensionados sem perda de qualidade e são adequados para vários propósitos, incluindo:

Os elementos SVG incluem:

  • Elemento <svg>: Define o elemento raiz dos gráficos SVG.
  • Elemento <path>: Define formas de caminho.
  • Elemento <rect>: Define formas retangulares.
  • Elemento <circle>: Define formas circulares.
  • Elemento <ellipse>: Define formas elípticas.
  • Elemento <line>: Define linhas retas.
  • Elemento <polygon>: Define polígonos.
  • Elemento <polyline>: Define polilinhas.
  • Elemento <text>: Define texto.
  • Elemento <g>: Define grupos, usado para agrupar elementos SVG juntos.
  • Elemento <defs>: Define atributos globais que podem ser aplicados a múltiplos elementos SVG.

Exemplo:

<svg width="500" height="500">
<circle cx="250" cy="250" r="100" fill="yellow" />
</svg>

Efeito:

Efeito do exemplo

SVG e Canvas são ferramentas para criar gráficos em páginas da web. Ambos têm suas próprias vantagens e desvantagens e são adequados para diferentes cenários.

SVG é um gráfico vetorial baseado em XML que pode ser dimensionado sem perda de qualidade. Isso significa que os gráficos SVG podem ser exibidos em qualquer tamanho sem perder qualidade. Os gráficos SVG também podem ser manipulados e animados usando CSS e JavaScript.

Canvas é uma API de desenho baseada em JavaScript que pode criar gráficos bitmap. Isso significa que os gráficos Canvas não podem ser dimensionados sem perda de qualidade, mas podem criar gráficos mais complexos usando JavaScript. Os gráficos Canvas também podem ser manipulados e animados usando JavaScript.

Diferenças específicas entre SVG e Canvas:

CaracterísticaSVGCanvas
Tipo de imagemVetorialBitmap
DimensionamentoSem perdaCom perda
Tipo de gráficoRetângulos, círculos, caminhos, etc.Qualquer
ManipulaçãoCSS, JavaScriptJavaScript
AnimaçãoCSS, JavaScriptJavaScript
Tamanho do arquivoGeralmente menorGeralmente maior
AcessibilidadeExcelenteRegular
  • SVG adequado para cenários:

    • Gráficos que precisam de dimensionamento sem perda, como ícones, logotipos, ilustrações
    • Gráficos que precisam ser manipulados e animados usando CSS e JavaScript
  • Canvas adequado para cenários:

    • Cenários que precisam criar gráficos complexos, como jogos, animações
    • Cenários que precisam de operações complexas usando JavaScript

Formulários HTML5

HTML5 introduziu alguns novos tipos de entrada e atributos para melhorar a funcionalidade e usabilidade dos formulários.

Novos elementos de formulário:

  • Elemento <datalist>: Lista de opções predefinidas para o elemento <input>.

Exemplo:

<label for="browser">Selecione o navegador:</label>
<input list="browsers" id="browser" name="browser" autocomplete="off">
<datalist id="browsers">
<option value="Chrome">
<option value="Firefox">
<option value="Safari">
<option value="Edge">
<option value="Opera">
</datalist>

Efeito:

Efeito do exemplo

ElementoDescrição
<datalist>Define uma lista de opções predefinidas para o elemento <input>.
<output>Representa o resultado de um cálculo.
<keygen>Cria um par de chaves para o formulário, geralmente usado para troca de chaves.
<progress>Define uma barra de progresso para qualquer tipo de tarefa.
<meter>Mede um valor escalar ou fração dentro de um intervalo conhecido.

Novos atributos de formulário:

  • Atributo autocomplete de <form> / <input>: Especifica se o form ou campo input deve ter a função de preenchimento automático. Quando o usuário começa a digitar no campo de preenchimento automático, o navegador deve exibir as opções de preenchimento no campo.

Exemplo:

<form action="demo-form.php" autocomplete="on">
Sobrenome: <input type="text" name="fname"><br>
Nome: <input type="text" name="lname"><br>
E-mail: <input type="email" name="email" autocomplete="off"><br>
<input type="submit">
</form>

Efeito:

Efeito do exemplo

AtributoDescrição
autocompleteEspecifica se o campo de entrada deve ativar a função de preenchimento automático.
novalidateDesativa a validação do formulário pelo navegador.
formEspecifica o formulário ao qual o elemento <input> pertence, associando-o a um formulário específico.
formactionEspecifica a URL a ser usada ao enviar o formulário.
formenctypeEspecifica o tipo de codificação a ser usado ao enviar o formulário (por exemplo, application/x-www-form-urlencoded ou multipart/form-data).
formmethodEspecifica o método HTTP a ser usado ao enviar o formulário (por exemplo, get ou post).
formnovalidateDesativa a validação do formulário pelo navegador ao enviar o formulário.
formtargetEspecifica a janela ou quadro de destino a ser aberto após o envio do formulário.
heightDefine a altura do elemento <input type="image">.
widthDefine a largura do elemento <input type="image">.
listEspecifica o id do elemento <datalist> associado ao elemento <input> ou <textarea>.
minEspecifica o valor mínimo do elemento <input>.
maxEspecifica o valor máximo do elemento <input>.
patternDefine uma expressão regular para validar o campo de entrada ao enviar o formulário.
placeholderFornece uma dica curta sobre o campo de entrada, exibida apenas quando o campo está vazio.
requiredEspecifica se o campo de entrada é obrigatório.
stepEspecifica o intervalo de números legais para o elemento <input>.

Novos tipos de input:

<form action="/submit" method="post">
<label for="name">Nome:</label>
<input type="text" id="name" required />
<br>
<label for="email">Endereço de e-mail:</label>
<input type="email" id="email" required />
<br>
<label for="birthday">Data de nascimento:</label>
<input type="date" id="birthday" required />
<br>
<label for="phone">Número de telefone:</label>
<input type="tel" id="phone" required />
<br>
<input type="submit" value="Enviar" />
</form>

Efeito:

Efeito do exemplo

TipoFunção
colorUsado para inserir valores de cores.
dateUsado para inserir valores de datas.
datetime-localUsado para inserir valores de data e hora.
emailUsado para inserir endereços de e-mail.
fileUsado para fazer upload de arquivos.
monthUsado para inserir valores de mês.
numberUsado para inserir valores numéricos.
rangeUsado para inserir valores de intervalo.
searchUsado para inserir strings de pesquisa.
telUsado para inserir números de telefone.
timeUsado para inserir valores de hora.
urlUsado para inserir endereços de URL.

[!Resumo]

ElementoFunçãoRecomendado?
Novos elementos
<canvas>Define gráficos, como gráficos e outras imagens. Esta tag é baseada na API de desenho JavaScript.Recomendado
<audio>Define conteúdo de áudioRecomendado
<video>Define vídeo (video ou movie)Recomendado
<source>Define recursos multimídia <video> e <audio>Recomendado
<track>Define legendas ou tradução de áudio ou vídeoRecomendado
<datalist>Define uma lista de opções. Use este elemento com o elemento input para definir os valores possíveis do input.Recomendado
<keygen>Especifica um campo gerador de par de chaves para o formulário.Recomendado
<output>Define diferentes tipos de saída, como saída de script.Recomendado
<article>Define uma área de conteúdo independente da página.Recomendado
<aside>Define o conteúdo da barra lateral da página.Recomendado
<bdi>Permite definir uma parte do texto para que se desvincule da configuração de direção de texto de seu elemento pai.Recomendado
<dialog>Define uma caixa de diálogo.Recomendado
<figure>Define uma área contendo imagens ou outro conteúdo visual.Recomendado
<footer>Define a área inferior da página ou parte da página.Recomendado
<header>Define a área superior da página ou parte da página.Recomendado
<main>Define a área de conteúdo principal da página.Recomendado
<mark>Define texto importante ou destacado.Recomendado
<meter>Define progresso ou intervalo de valores.Recomendado
<nav>Define a área de navegação da página ou parte da página.Recomendado
<progress>Define uma barra de progresso.Recomendado
<time>Define data ou hora.Recomendado
<wbr>Permite inserir um caractere quebrável no texto.Recomendado
Elementos obsoletos ou não recomendados
<acronym>Define um acrônimo. Recomenda-se usar o elemento <abbr> em vez disso.Recomendado
<applet>Define um applet Java. Recomenda-se usar JavaScript ou outras tecnologias modernas em vez disso.Não recomendado
<basefont>Define o tamanho e a cor padrão da fonte para todo o texto na página. Recomenda-se usar CSS para definir estilos de texto.Não recomendado
<big>Define o tamanho da fonte do texto. Recomenda-se usar CSS para definir estilos de texto.Não recomendado
<center>Força o alinhamento centralizado do texto. Recomenda-se usar CSS para definir o alinhamento do texto.Não recomendado
<dir>Define uma lista de diretórios. Recomenda-se usar o elemento <ul> em vez disso.Não recomendado
<font>Define o tamanho, cor, estilo, etc. da fonte do texto. Recomenda-se usar CSS para definir estilos de texto.Não recomendado
<frame>Define um quadro. Recomenda-se usar o elemento iframe em vez disso.Não recomendado
<frameset>Define um conjunto de quadros. Recomenda-se usar o elemento iframe em vez disso.Não recomendado
<noframes>Fornece conteúdo alternativo para navegadores que não suportam quadros. Recomenda-se usar JavaScript para determinar se o navegador suporta quadros e exibir ou ocultar conteúdo conforme necessário.Não recomendado
<strike>Define um tachado no texto. Recomenda-se usar CSS para definir estilos de texto.Não recomendado
<tt>Define uma fonte monoespaçada para o texto. Recomenda-se usar CSS para definir a fonte do texto.Não recomendado
Compartilhar:

Comentários