
Umelemento HTML é uma parte de umapágina da internet.[1] Um elemento é qualquer objeto identificável dentro de um documento, por exemplo, um caractere, palavra, imagem, parágrafo ou célula de planilha. EmHTML, um elemento refere-se a um par de tags e seu conteúdo, ou a uma tag "vazia", que não requer tag de fechamento ou conteúdo.[2]Um elemento típico pode conter um pedaço de texto ou uma imagem, ou talvez nada.[1]
Elementos HTML são todos os tags que estão em arquivos HTML e que se transformam em elementos da árvore DOM. Cada elemento pode ter determinados atributos. Os elementos podem ter ainda conteúdo, incluindo outros elementos e textos. Elementos HTML representamsemântica ou significado. Por exemplo, o elementotitle representa o título de um documento.
Na sintaxe HTML, a maioria dos elementos são escritos com marcadores (ainda chamados deetiquetas outags) de abertura e um marcador de fechamento, com o conteúdo entre os dois. As etiquetas são compostas do nome do elemento, fechadas por parênteses angulares. Uma marcação de fechamento possui ainda uma barra após o parêntese inicial, para distingui-lo da marcação de abertura. Por exemplo, um parágrafo que é representado pelo elementop seria escrito como
<p>Na sintaxe HTML, a maioria dos elementos são escritas...</p>
No entanto, nem todos esses elementosexigem a etiqueta de fechamento, ou mesmo a de abertura, para estar presente. Alguns elementos , os chamadoselementos vazios, não possuem uma tag de fechamento. Um exemplo típico é o elementobr que representa uma quebra de linha significante, tais como em um poema ou em um endereço. Por exemplo, o endereço dodentista emFinding Nemo seria escrito como
P. Sherman<br/>42 Wallaby Way<br/>Sydney
Atributos são especificados na etiqueta de abertura. A exemplo, o elementoabbr, que representa umaabreviatura, espera um atributotitle em sua expressão. Isto seria escrito como
<abbrtitle="Hyper Text Markup Language">HTML</abbr>

<p ... >classfooIsto é um parágrafo.</p><p>Isto é um parágrafo</p>Há múltiplos tipos de elementos HTML: elementos vazios, elementos de texto, e elementos normais.
Elementos vazios possuem apenas uma tag de abertura, que possui os seus respectivos atributos. Para exemplificação, o elementolink, para o qual a sintaxe é
<linkrel=stylesheethref=fancy.csstype="text/css">
Este elementolink aponta para o navegador umafolha de estilo para ser utilizada no documento HTML. Note que na sintaxe HTML, atributos não precisam levar aspas. Ao utilizar a sintaxeXML (XHTML), por outro lado, todos os atributos devem ter aspas, e uma barra é necessária antes do último parêntese angular da etiqueta:
<linkrel="stylesheet"href="fancy.css"type="text/css"/>
Elementos de texto são construídos com:
<tag>) marcando o início do elemento, que pode ser incorporar alguns diversos atributos;</tag>. Em algumas versões do HTML, a etiqueta de fechamento é opcional para alguns elementos. A etiqueta de fechamento é obrigatória no XHTML.Elementos normais geralmente possuem ambas marcações de abertura e fechamento / fecho, apesar de que para alguns elementos a marcação de fechamento / fecho, ou ambas marcações, podem ser omitidas. Eles são construídos de maneira semelhante:
<tag>) marcando o início do elemento, que pode ser incorporar alguns diversos atributos;</tag>.Atributos definem um comportamento desejado ou indicam propriedades adicionais do elementos. A maioria dos atributos exigem umvalor. No HTML, o valor pode ser adicionado sem aspas, caso não possua espaços (name=valor), ou pode ser adicionado com aspas simples ou duplas (name='valor' orname="valor"). No XML, essas aspas são compulsórias. Atributos booleanos, por outro lado, não exigem um valor a ser especificado. Um exemplo é ochecked para checkboxes:
<inputtype=checkboxchecked>
Na sintaxe XML, entretanto, o nome deve ser repetido no valor:
<inputtype="checkbox"checked="checked"/>
Elementos e tags não são as mesmas coisas. As tags iniciam ou terminam um elemento nocódigo-fonte, enquanto os elementos fazem parte do DOM, o modelo do documento para exibir a página no navegador.[1]
Informalmente, os elementos HTML são referenciados às vezes como "tags" (um exemplo desinédoque), apesar de que muitos prefiram restringir o termotag estritamente a marcação delimitando o início e o fim dos elementos.
O nome de elementos (e atributos) podem ser escritos em qualquer combinação de letras maiúsculas e minúsculas no HTML, mas devem estar em minúsculas no caso do XHTML.[3] A forma canônica era maiúsculas até o HTML 4, sendo usada inclusive nas especificações HTML, mas recentemente, a forma minúscula tornou-se mais comum.
Os elementos HTML são definidos em uma série de padrões abertos de acesso livre emitidos desde 1995, inicialmente pelaIETF e subsequentemente pelaW3C.
Desde o começo da década de 1990, fabricantes deagentes do usuário (e.g.navegadores web) desenvolviam seus próprios elementos, alguns dos quais vieram a se tornam padrão posteriormente. Outros agentes de usuários podem não reconhecer elementos não-padrão, de modo que eles podem ser ignorados ou serem apresentados de forma inadequada.
Em 1998,XML (uma forma simplificada de SGML) introduziu um mecanismo para permitir que qualquer pessoa desenvolva seus próprios elementos e incorpore-os nos elementos XHTML, para o uso com softwares XML.[4]
Subsequentemente, HTML 4.01 foi reescrito em uma forma compatível com XML,XHTML 1.0 (eXtensible HTML). Os elementos em cada um eram idênticos, e a maioria dos casos, documentos XHTML 1.0 válidos seriam válidos ou quase válidos em documentos HTML 4.01.
Desde a primeira versão do HTML, diversos elementos saíram de moda, e tornaram-seobsoletos em padrões posteriores, ou não aparecem neles, no caso de sereminválidos.
No momento, o estado dos elementos é complicada pela existência de três tipos de HTML 4.01 / XHTML 1.0 DTD:
O primeiro padrão (HTML 2.0) continha quatro elementos obsoletos, um dos quais era inválido no HTML 3.2. Todos os quatro são inválidos no HTML 4.01 Transitional, que também deprecia cerca de dez elementos. Todos esses, junto a outros dois, são inválidos no HTML 4.01 Strict. Enquanto os elementos frame ainda estão em uso no sentido de estarem presente na versão Transitional e Frameset DTDs, não há planos de preservá-los nos padrões futuros, e suas funções podem ser vastamente substituídas, por serem muito problemáticas para acessibilidade de usuários.
<html>...</html><head>...</head><body>...</body><base>href relativos e outros links no documento. Deve aparecer antes de qualquer elemento que refere-se a um recurso externo. HTML permite apenas um elementobase para cada documento. O elementobase possui atributos mas nenhum conteúdo.<basefont>font. Depreciada em favor das folhas de estilo.<isindex>isindex pode tanto aparecer no cabeçalho do documento quanto no corpo, mas apenas uma vez no documento. Requer um motor de busca no servidor.<link><link rel="stylesheet" type="text/css" href="url" title="description_of_style">[6]<link rel="next" href="url">head do documento pode conter vários elementoslink. O elementolink possui atributos, mas nenhum conteúdo.<meta>meta especificampares de chave-valor associativos.meta podem especificar cabeçalhosHTTP que seriam enviados para umservidor web antes do conteúdo em si, por exemplo:<meta http-equiv="foo" content="bar">foo that has a valuebar.meta especifica os atributosname econtent associado descrevendo aspectos da página HTML. Para prevenir uma possível ambiguidade, um terceiro atributo opcional,scheme, pode ser fornecido para para especificar um framework semântico que define o significado das chaves e seus valores; por exemplo:<meta name="foo" content="bar" scheme="DC"><object>…</object>head, ele pode potencialmente ser usado para extrair dados externos e associá-los ao documento em uso.<script>…</script>src.[7] Ainda utilizável no corpo do documento para gerar dinamicamente tanto blocos quanto conteúdo em linha.<style>…</style><style type="text/css"> … </style>@import com o seguinte formato:<style> @importurl; </style>[8]<title>…</title>title não pode conter outros elemento, apenas o texto. Apenas um elementotitle é permitido em um documento.Em navegadores visuais, elementos visualizável podem ser renderizados tanto comobloco quantoinline. Enquanto todos os elementos são parte da sequência do documento, os elementos de blocos aparecem dentro de seus elementos pais:
Por outro lado, elementos inline são tratados como parte do fluxo de texto; eles não podem ter margens, ter largura ou a altura fixaadas, e realizam quebra entre as linhas.
<p>...</p>P existia noHTML Tags, e foipadronizado noHTML 2.0; ainda em uso.<h1>...</h1><h2>...</h2><h3>...</h3><h4>...</h4><h5>...</h5><h6>...</h6><h1> delimitas o cabeçalho de nível mais alto,<h2> o nivel subsequentemente abaixo (subsecção),<h3> para um nível abaixo deste, e assim por diante<h6>.<dl>...</dl>DL existia noHTML Tags, e foipadronizado noHTML 2.0; ainda em uso.<dt>...</dt>DT existia noHTML Tags, e foipadronizado noHTML 2.0; ainda em uso.<dd>...</dd>DD existia noHTML Tags, e foipadronizado noHTML 2.0; ainda em uso.<ol>...</ol>type pode ser usado para especificar o tipo de ordenação, mas folhas de estilos fornecem um controle maior:{list-style-type:foo}. Por omissão, são utilizados a numeração arábica.OL existia noHTML Internet Draft 1.2, e foipadronizado noHTML 2.0; ainda em uso.<ul>...</ul>{list-style-type: foo}. O marcador padrão é um disco.UL existia noHTML Tags, e foipadronizado noHTML 2.0; ainda em uso.<li>...</li>LI existia noHTML Tags, e foipadronizado noHTML 2.0; ainda em uso.<dir>...</dir><ul>.DIR existia noHTML Tags, e foipadronizado noHTML 2.0;tornado obsoleto noHTML 4.0 Transitional;invalidado noHTML 4.0 Strict.<menu>...</menu><ul>, mas é poucamente suportado. tornado obsoleto em favor do<ul>.MENU existia noHTML Tags, e foipadronizado noHTML 2.0;tornado obsoleto noHTML 4.0 Transitional;inválido noHTML 4.0 Strict.<address>...</address>ADDRESS existia noHTML Tags, e foipadronizado noHTML 2.0; ainda em uso.<noscript>...</noscript><script>...</script>src.[7] Ainda utilizável no corpo do documento para gerar dinamicamente tanto blocos quanto conteúdo em linha.<font>...</font><font [color=color] [size=size] [face=face]>…</font>color, tipografia com o atributoface, e o tamanho relativo ou absoluto com o atributosize.<font color="green">text</font> cria<font color="#114499">text</font> criatexto comcor hexadecimal #114499.<font size="4">text</font> cria Tamanhos são de 1 a 7. O tamanho padrão é 3, a menos que outro seja especificado na tag <body> ou outras.<font size="+1">text</font> cria .<font size="-1">text</font> é oposto.<font face="Courier New">text</font> faz .<font size="N"> corresponde a{font-size:Yunidades} (a especificação HTML não define a relação entre o tamanhoN e a unidade de tamanhoY, nem define a unidade).<font color="red"> corresponde a{color: red}<font face="Courier New"> corresponde a{font-family: "Courier New"}Frames (quadros) permitem que uma janela visual HTML do navegador seja separada em segmentos, cada qual podendo mostrar um documento diferente. Isto pode reduzir o uso de largura de banda, uma vez que partes repetidas de um leiaute podem ser usadas em um frame, enquanto o conteúdo variável é mostrado em outro. Isto pode vir em um certo custo de usabilidade, especialmente em agentes de usuário não-visuais, devido a documentos (ou sites web) separados e independentes serem mostrados adjacentes a cada um e sendo permitidos interagir com a mesma janela pai. Devido a este custo, frames (excluindo o elemento<iframe>) são permitidos apenas no conjunto de frames (Frame-set) do HTML 4.01. iFrames também podem armazenar documentos em servidores diferentes. Neste caso a interação entre janelas é bloqueada pelo navegador. Sites comoFacebook etwitter usam iFrames para mostrar conteúdo (plugins) em sites web parceiros de terceiros. O Google Adsense utiliza iframes para mostrar banners em sites web parceiros de terceiros.
<!-- Um comentário -->style escript ainda são, algumas vezes, escritos dentro dos delimitadores de comentário.<!--Xbegin<!--Y-->Xend--> resultará no comentárioXbegin<!--Y e o textoXend--> após ele.