Html: Uma linguagem de marcação utilizada na construção de páginas na Web

HTML (abreviação para a expressão inglesa HyperText Markup Language, que significa: Linguagem de Marcação de Hipertexto) é uma linguagem de marcação utilizada na construção de páginas na Web.

Documentos HTML podem ser interpretados por navegadores. A tecnologia é fruto da junção entre os padrões HyTime e SGML.

HTML
(Hypertext Markup Language)
HTML5
Extensão do arquivo
  • .html
  • .htm
MIME text/html
Type code TEXT
Desenvolvido por W3C & WHATWG
Tipo de formato Linguagem de marcação
Padronização
Página oficial

HyTime é um padrão para a representação estruturada de hipermídia e conteúdo baseado em tempo. Um documento é visto como um conjunto de eventos concorrentes dependentes de tempo (como áudio, vídeo, etc.), conectados por hiperligações (em inglês: hyperlink e link). O padrão é independente de outros padrões de processamento de texto em geral.

SGML é um padrão de formatação de textos. Não foi desenvolvido para hipertexto, mas tornou-se conveniente para transformar documentos em hiper-objetos e para descrever as ligações.

História

Html: História, Marcas (tags), Edição de documentos HTML 
Tim Berners-Lee em 2008.

Tim Berners-Lee (físico britânico) criou o HTML original (e outros protocolos associados como o HTTP), numa estação NeXTcube, usando o ambiente de desenvolvimento NeXTSTEP. Na época, a linguagem não era uma especificação, mas uma coleção de ferramentas para resolver um problema de Tim: a comunicação e disseminação das pesquisas entre ele e o seu grupo de colegas. A sua solução, combinada com a então emergente internet pública (que tornar-se-ia a Internet), ganhou atenção mundial.

As primeiras versões do HTML foram definidas com regras sintáticas flexíveis, o que ajudou aqueles sem familiaridade com a publicação na Web. Através do tempo, a utilização de ferramentas para autoria de HTML aumentou, assim como a tendência em tornar a sintaxe cada vez mais rígida. Apesar disso, por questões históricas (retrocompatibilidade), os navegadores ainda hoje conseguem interpretar páginas web que estão longe de ser um código HTML válido.

A linguagem foi definida em especificações formais na década de 1990, inspiradas nas propostas originais de Tim Berners-Lee em criar uma linguagem baseada em SGML para a Internet. A primeira publicação foi esboçada por Berners-Lee e Dan Connolly e publicada em 1993 na IETF, como uma aplicação formal para o SGML (com uma DTD em SGML definindo a gramática). A IETF criou um grupo de trabalho para o HTML no ano seguinte, e publicou o HTML 2.0 em 1995. Desde 1996, as especificações HTML vêm sendo mantidas, com o auxílio de fabricantes de software, pelo World Wide Web Consortium (W3C). Apesar disso, em 2000 a linguagem tornou-se também uma norma internacional (ISO/IEC 15445:2000). A recomendação HTML 4.01 foi publicada no final de 1999 pelo W3C. Uma errata ainda foi lançada em 2001.

Desde a publicação do HTML 3.5 no final de 1997, o grupo de trabalho da W3C tem cada vez mais — e de 2002 a 2006, de forma exclusiva — focado no desenvolvimento do XHTML, uma especificação HTML baseada em XML que é considerada pela W3C como um sucessor do HTML. O XHTML faz uso de uma sintaxe mais rigorosa e menos ambígua para tornar o HTML mais simples de ser processado e estendido.

Em janeiro de 2008 o W3C publicou a especificação do HTML5 como Working Draft. Apesar de sua sintaxe ser semelhante à de SGML, o HTML5 abandonou qualquer tentativa de ser uma aplicação SGML e definiu explicitamente sua própria serialização "html", além de uma alternativa baseada em XML, o XHTML5.

Várias versões HTML foram publicadas:

Versão Ano
HTML 1991
HTML 2.0 1995
HTML 3.2 1997
HTML 4.01 1999
XHTML 2000
HTML5 2014
HTML5.1 2016 e 2017 (2ª ed.)
HTML5.2 2017

Marcas (tags)

Html: História, Marcas (tags), Edição de documentos HTML Ver artigo principal: Tabela de cores
Html: História, Marcas (tags), Edição de documentos HTML 
HTML element content categories

Todo documento HTML possui marcadores (do inglês: tags), palavras entre parênteses angulares (chevron) (< e >); esses marcadores são os comandos de formatação da linguagem. Um elemento é formado por um nome de marcador (tag), atributos, valores e filhos (que podem ser outros elementos ou texto). Os atributos modificam os resultados padrões dos elementos e os valores caracterizam essa mudança. Exemplo de um elemento simples (não possui filhos):

<hr /> 

Exemplo de um elemento composto (possui filhos):

<a href="https://pt.wikipedia.org/">Wikipédiaa> 
  • é o marcador de abertura
  • é o marcador de fechamento
  • href é o atributo onde é definido a url, que será acessada ao clicar no link.

Outro exemplo de elemento composto (possui filhos):

<a href="https://pt.wikipedia.org" target="_self"><p>Wikipédiap>a> 
  • p = marcador que define um parágrafo.
  • a = marcador que define uma hiperligação.
  • href = atributo que define a URL da hiperligação.
  • target = atributo que define a forma como a hiperligação será aberta.
  • _self = valor do atributo Target que define que a hiperligação será aberta na mesma guia.
  • / = define o fechamento do elemento

Isso é necessário porque os marcadores servem para definir a formatação de uma porção do documento, e assim marcamos onde começa e termina o conteúdo que receberá a formatação ou marcação necessária, específica. Alguns elementos são chamados “vazios”, pois não marcam uma região de texto, apenas inserem algum elemento no documento.

Cada elemento tem os seus atributos possíveis e os seus valores. Um exemplo, é o atributo href que pode ser usado com o elemento a, com o link mas que não pode ser usado com o elemento meta. Isso quer dizer que devemos saber exatamente quais os atributos e valores possíveis para cada elemento.

De uma maneira geral o HTML é um poderoso recurso, sendo uma linguagem de marcação muito simples e acessível voltada para a produção e compartilhamento de documentos, imagens, vídeos e áudio via streaming.

Na sua versão mais recente, o HTML5, é possível criar marcadores personalizados com JavaScript, linguagem de programação diretamente compatível com o HTML. Cada tag pode ter uma função específica utilizando uma API (Interface de programação de aplicações) diferente, assim como seus nomes e estilos.

Edição de documentos HTML

Os documentos em HTML são arquivos de texto simples que podem ser criados e editados em qualquer editor de textos comum, como o Bloco de Notas do Windows, ou o TextEdit, do Macintosh. Para facilitar a produção de documentos, no mercado existem editores HTML específicos, com recursos sofisticados, que facilitam a realização de tarefas repetitivas, inserção de objetos, elaboração de tabelas e outros recursos (Ver lista abaixo). Basicamente dividem-se em dois tipos:

  • Editores de texto fonte: inserem automaticamente os marcadores, orientando a inserção de atributos e marcações
  • Editores WYSIWYG: oferecem ambiente de edição com um "esboço" resultado final das marcações

Estrutura básica de um documento

A estrutura básica de um documento HTML (Hyper Text Markup Language - Linguagem de Marcação de Hypertexto), apresenta as seguintes marcações:

 <html lang="pt-BR">   <head>     <meta charset="UTF-8" />     <meta name="viewport" content="width=device-width, initial-scale=1" />     <title>Título do Documentotitle>   head>   <body>           <div>Tag para criar um bloco, mais utilizado com CSSdiv>      <span>Tag para modificação de uma parte do texto da páginaspan>      <img src="imagem.jpg" />      <a href="https://www.wikipedia.org">Wikipédia, A Enciclopédia Livrea>   body> html> 

Os marcadores HTML não são sensíveis à caixa, portanto tanto faz escrever , , ou .

Os marcadores básicos de HTML, cuja presença é altamente recomendada nas páginas são:

  • : define o início de um documento HTML e indica ao navegador que todo conteúdo posterior deve ser tratado como uma série de códigos HTML
  • : define o cabeçalho de um documento HTML, que traz informações sobre o documento que está sendo aberto
  • : define o conteúdo principal, o corpo do documento. Esta é a parte do documento HTML que é exibida no navegador. No corpo podem-se definir atributos comuns a toda a página, como cor de fundo, margens, e outras formatações.

Cabeçalho

Dentro do cabeçalho podemos encontrar os seguintes elementos:

  • Html: História, Marcas (tags), Edição de documentos HTML - Wiki Português (Portuguese): define o título da página, que é exibido na barra de título dos navegadores
  • : define formatação em CSS
  • : define scripts JavaScript ou importa de um arquivo externo
  • : define ligações da página com outros arquivos como feeds, CSS, scripts, etc
  • : define propriedades da página, como codificação de caracteres, descrição da página, autor, etc

São meta informações sobre documento. Tais campos são muito usados por mecanismos de busca (como o Google, Yahoo!, Bing) para obterem mais informações sobre o documento, a fim de classificá-lo melhor. Por exemplo, pode-se adicionar o código <meta name="description" content="descrição da sua página" /> no documento HTML para indicar ao motor de busca que texto de descrição apresentar junto com a ligação para o documento. Para o motor de busca Google, por exemplo, elementos meta como keywords não são utilizadas para indexar páginas. Apenas </code> e a meta <code>description</code> são usadas para descrever a página indexada. </p><p>Obs: Os marcadores <code><style></code> e <code> <link rel="preload" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css" as="style" onload="this.onload=null;this.rel='stylesheet'"><noscript><link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css"></noscript><script defer src="https://ajax.googleapis.com/ajax/libs/jquery/3.6.3/jquery.min.js" crossorigin="anonymous"></script><script defer src="https://cdnjs.cloudflare.com/ajax/libs/lazysizes/5.3.2/lazysizes.min.js" crossorigin="anonymous"></script><script defer src="https://cdn.jsdelivr.net/gh/tomickigrzegorz/show-more@1.1.6/dist/js/showMore.min.js" crossorigin="anonymous"></script><script>document.addEventListener('DOMContentLoaded', function(){$(document).ready(function(){ $("img").addClass("duhoc_responsive lazyload"); $("table").addClass("table-responsive");$(".toctogglespan, #mw-mf-main-menu-button").click(function(){$(".toclist_viewer").toggle(200);/*$("header").removeClass("header-fixed").hide(); */ });$(".toctext").click(function(){/*$("header").removeClass("header-fixed"); */ });$("a.external, a.new, a.image, a.extiw, a.text, a.free, a.internal, a.last-modified-bar, a.mw-file-description").click(function(){window.open(this.href);return false;}); $(".back-to-top").click(function(){ $("html, body").animate({scrollTop : 0},"slow"); return false; });$(".back-to-top").hide();/**$(".reflist").hide(); function sticky_relocate() { var window_top = $(window).scrollTop(); var footer_top = $("#footer-info").offset().top; var div_top = $("#Other_languages").offset().top; var div_height = $(".top_lang").height(); var padding = 200; console.log(window_top + " "+ div_height + " " +padding + " --> " + footer_top); if(window_top + div_height +padding> footer_top){ $(".article_footer_sticky").hide(); }else{ $(".article_footer_sticky").show(); } } $(function () { $(window).scroll(sticky_relocate); sticky_relocate(); });**/});$(window).scroll(function(){ var showAfter = 200; if ($(this).scrollTop() > showAfter) { $(".back-to-top").fadeIn(); } else { $(".back-to-top").fadeOut(); }});new ShowMore(".minerva-languages", {config: { type: "list", limit: 23, number: true, more: "→ All languages", less: "← Less"} });});</script><script>function mfTempOpenSection(getID) {var x = document.getElementById("mf-section-"+getID); if (x.style.display === "none") { x.style.display = ""; } else { x.style.display = "none"; }}</script><!-- Global site tag (gtag.js) async - Google Analytics --><script async src="https://www.googletagmanager.com/gtag/js?id=G-GTLLE2Y4Q3"></script><script> window.dataLayer = window.dataLayer || []; function gtag(){dataLayer.push(arguments);} gtag('js', new Date()); gtag('config', 'G-GTLLE2Y4Q3');</script></body> </html>