HTML - HTML

Da Wikipédia, a enciclopédia livre

HTML
(Hypertext Markup Language)
logotipo HTML5 e wordmark.svg
O logotipo oficial da última versão - HTML5 .
extensão de arquivo
  • .html
  • .htm
Internet tipo de mídia text/html
código de tipo TEXTO
Desenvolvido por W3C e WHATWG
lançamento inicial 1993 ; Há 25 anos ( 1993 )
Último lançamento
5.2 / 5.3 (draft de trabalho)
(14 de dezembro, 2017 ; 11 meses atrás ) ( 2017/12/14 )
Tipo de formato formato de arquivo de documento
prorrogado a partir de SGML
Alargado a XHTML
Padrões
Formato aberto ? sim
Local na rede Internet

Hypertext Markup Language ( HTML ) é o padrão linguagem de marcação para a criação de páginas web e aplicações web . Com Cascading Style Sheets (CSS) e JavaScript , ele forma uma tríade de pedra angular tecnologias para a World Wide Web .

Os navegadores da Web receber documentos HTML de um servidor web ou do armazenamento local e tornar os documentos para páginas web multimédia. HTML descreve a estrutura de uma página web semântica e originalmente incluía sugestões para a aparência do documento.

Elementos HTML são os blocos de construção de páginas HTML. Com construções de HTML, imagens e outros objectos, tais como formulários interativos podem ser incorporado na página renderizada. HTML fornece um meio para criar documentos estruturados por denotando estruturais semântica para o texto, como cabeçalhos, parágrafos, listas, ligações , citações e outros itens. Elementos HTML são delineados por marcas , escrito usando colchetes . Tags como e directamente introduzir o conteúdo para a página. Outras marcas, como surround e fornecer informações sobre texto do documento e pode incluir outras tags como sub-elementos. Browsers não exibir as tags HTML, mas usá-los para interpretar o conteúdo da página. <img /><input /><p>

HTML pode incorporar programas escritos em uma linguagem de script , como JavaScript , o que afeta o comportamento e conteúdo das páginas web. Inclusão de CSS define o visual e layout do conteúdo. O World Wide Web Consortium (W3C), mantenedor, tanto do HTML e os padrões CSS, tem incentivado o uso de CSS sobre HTML apresentação explícita desde 1997.

História

Desenvolvimento

Fotografia de Tim Berners-Lee em abril de 2009
Tim Berners-Lee em abril de 2009

Em 1980, o físico Tim Berners-Lee , um empreiteiro no CERN , proposta e protótipo INQUIRE , um sistema para os pesquisadores do CERN para usar e compartilhar documentos. Em 1989, Berners-Lee escreveu um memorando propondo uma Internet baseados em hipertexto sistema. Berners-Lee especificado HTML e escreveu o software navegador eo servidor no final de 1990. Naquele ano, Berners-Lee e CERN engenheiro de sistemas de dados Robert Cailliau colaboraram em um pedido conjunto para financiamento, mas o projeto não foi formalmente adoptada pelo CERN. Em suas notas pessoais de 1990, listada "algumas das muitas áreas em que o hipertexto é usado" e colocar uma enciclopédia em primeiro lugar.

A primeira descrição disponível ao público de HTML foi um documento chamado "HTML Tags", mencionado pela primeira vez na Internet por Tim Berners-Lee no final de 1991. Ele descreve 18 elementos que compõem o projeto inicial, relativamente simples de HTML. Exceto para a marca de hiperlink, estes foram fortemente influenciados pelo SGMLguid , um in-house Standard Generalized Markup Language (SGML) baseados em formato de documentação no CERN. Onze destes elementos ainda existem no HTML 4.

HTML é uma linguagem de marcação que navegadores usam para interpretar e compor textos, imagens e outros materiais em páginas da web visuais ou sonoros. Características padrão para cada item de marcação HTML são definidos no navegador, e essas características podem ser alteradas ou melhoradas por uso adicional do designer da página web da CSS . Muitos dos elementos de texto são encontrados em 1988 ISO TR relatório técnico 9537 Técnicas para usar SGML , que por sua vez abrange as características de linguagens de formatação de texto no início, como o utilizado pelo comando RUNOFF desenvolvido no início dos anos 1960 para o CTSS (Compatível com Time -partilha sistema operacional System): estes comandos de formatação foram derivados dos comandos usados por tipógrafos manualmente documentos de formato. No entanto, o conceito de marcação SGML generalizada baseia-se em elementos (intervalos anotados aninhadas com atributos), em vez de simplesmente imprimir efeitos, com também a separação de estrutura e de marcação; HTML tem sido progressivamente mudou neste sentido com CSS.

Berners-Lee considerado HTML para ser uma aplicação da SGML. Ele foi formalmente definida como tal pela Internet Engineering Task Force (IETF) com a publicação meados de 1993, da primeira proposta de uma especificação HTML, o "Hypertext Markup Language (HTML)" Projecto Internet por Berners-Lee e Dan Connolly , que incluído um SGML definição de tipo de documento para definir a gramática. O projecto expirou depois de seis meses, mas era notável por sua reconhecimento da NCSA Mosaic tag personalizado navegador do para a incorporação de imagens em linha, refletindo a filosofia de basear normas sobre protótipos bem sucedidos do IETF. Da mesma forma, Dave Raggett competindo Internet-Draft 's, "HTML + (Hypertext Markup Format)", a partir de final de 1993, sugeriu padronizar recursos já implementados como tabelas e formas enchem-out.

Depois do código HTML e HTML + correntes de ar expirado no início de 1994, o IETF criado um Grupo de Trabalho HTML, que em 1995 completou "HTML 2.0", a primeira especificação HTML destina-se a ser tratado como um padrão contra o qual implementações futuras deve ser baseado.

Maior desenvolvimento sob os auspícios do IETF foi parado por interesses concorrentes. Desde 1996, as especificações HTML foram mantidas, com a entrada de fornecedores de software comercial, pela World Wide Web Consortium (W3C). No entanto, em 2000, HTML também se tornou um padrão internacional ( ISO / IEC 15445: 2000). HTML 4.01 foi publicado no final de 1999, com mais errata publicada até 2001. Em 2004, o desenvolvimento começou em HTML5 no aplicativo Grupo Web Hypertext Tecnologia de Trabalho (WHATWG), que se tornou uma entrega conjunta com o W3C em 2008, e concluído e padronizou 28 de outubro de 2014.

versões HTML cronograma

24 nov 1995
HTML 2.0 foi publicado como RFC  1866 . Suplementares RFCs acrescentou capacidades:
14 de janeiro de 1997
HTML 3.2 foi publicada como uma Recomendação W3C . Foi a primeira versão desenvolvido e padronizado exclusivamente pelo W3C, como a IETF tinha fechado seu Grupo de Trabalho HTML em 12 de setembro de 1996.
Inicialmente o nome de código "Wilbur", HTML 3.2 caiu fórmulas matemáticas inteiramente, sobreposição reconciliados entre várias extensões proprietárias e adotou a maior parte do Netscape tags de marcação visuais 's. Do Netscape elemento piscar e Microsoft 's elemento marquise foram omitidas devido a um acordo mútuo entre as duas empresas. A marcação para fórmulas matemáticas semelhantes àquele em HTML não foi padronizado até 14 meses depois, em MathML .
18 de dezembro de 1997
HTML 4.0 foi publicado como uma recomendação W3C. Ele oferece três variações:
  • Estrita, em que preterido elementos são proibidos
  • Transitório, no qual preterido elementos são permitidos
  • Conjunto de molduras, em que a maioria só quadro são permitidos elementos relacionados.
Inicialmente codinome "Cougar", HTML 4.0 adotou muitos tipos de elementos específicas do navegador e atributos, mas, ao mesmo tempo procurou eliminar gradualmente características de marcação visuais do Netscape, marcando-as como obsoleto em favor das folhas de estilo. HTML 4 é uma aplicação SGML conformidade com a ISO 8879 - SGML.
24 de abril de 1998
HTML 4.0 foi relançado com edições menores sem incrementar o número da versão.
24 dez 1999
HTML 4.01 foi publicado como uma recomendação W3C. Ele oferece os mesmos três variações como HTML 4.0 e sua última errata foi publicada em 12 de maio de 2001.
Maio de 2000
ISO / IEC 15445: 2000 ( " ISO HTML", baseado em HTML 4.01 Strict) foi publicado como um / norma internacional IEC ISO. Na ISO esta norma cai no domínio da ISO / IEC JTC1 / SC34 (ISO / IEC Comité Técnico Conjunto 1, Subcomitê 34 - descrição de documentos e linguagens de processamento).
Depois de HTML 4.01, não havia nenhuma nova versão do HTML por muitos anos como o desenvolvimento do paralelo, linguagem baseada em XML XHTML ocupada Grupo de Trabalho HTML do W3C através do início e meados da década de 2000.
28 de outubro de 2014
HTML5 foi publicado como uma recomendação W3C.
1 de novembro de 2016
HTML 5.1 foi publicado como uma recomendação W3C.
14 de dezembro de 2017
HTML 5.2 foi publicado como uma recomendação W3C.

HTML versão preliminar cronograma

outubro 1991
Tags HTML , um documento CERN informal listando 18 tags HTML, foi mencionado pela primeira vez em público.
junho 1992
Primeiro esboço informal do DTD HTML, com sete revisões subsequentes (15 de Julho, 6 de agosto, 18 de agosto, 17 de Novembro, 19 de Novembro, 20 de Novembro, 22 de Novembro)
novembro 1992
HTML DTD 1.1 (o primeiro com um número de versão, com base em revisões RCS, que começam com 1,1 em vez de 1,0), um projecto informal
junho 1993
Hypertext Markup Language foi publicado pelo IETF IIIR Grupo de Trabalho como um Projecto Internet (uma proposta difícil para um padrão). Ele foi substituído por uma segunda versão um mês depois, seguido de mais seis projectos publicados por si só IETF que finalmente levaram à HTML 2.0 no RFC  1866 .
nov 1993
HTML + foi publicado pelo IETF como um Projecto de Internet e foi uma proposta concorrente ao projecto de Hypertext Markup Language. Ele expirou em Maio de 1994.
Abril de 1995 (autor de Março de 1995)
HTML 3.0 foi proposto como um padrão para o IETF, mas a proposta expirou cinco meses depois (28 de setembro 1995) sem mais ação. Ele incluiu muitas das capacidades que estavam na proposta HTML + de Raggett, como suporte para tabelas, o fluxo de texto em torno de figuras ea exibição de fórmulas matemáticas complexas.
W3C iniciou o desenvolvimento de seu próprio navegador Arena como uma cama de teste para HTML 3 e Cascading Style Sheets, mas HTML 3.0 não teve êxito por várias razões. O projecto foi considerado muito grande em 150 páginas e o ritmo de desenvolvimento do navegador, bem como o número de partes interessadas, tinha ultrapassado os recursos do IETF. Fabricantes de navegadores, incluindo Microsoft e Netscape na época, optou por implementar diferentes subconjuntos de projecto do HTML 3 recursos, bem como para introduzir suas próprias extensões para ele. (veja guerras do navegador ). Estas extensões incluídos para controlar aspectos estilísticos de documentos, ao contrário da "crença [da comunidade de engenharia acadêmica] que coisas como cor do texto, textura do fundo, tamanho da fonte e font face foram definitivamente fora do âmbito de um idioma quando a sua única intenção era para especificar como um documento seria organizado." Dave Raggett, que tem sido um W3C Fellow por muitos anos, comentou, por exemplo: "Até certo ponto, a Microsoft construiu seu negócio na Web, estendendo recursos HTML."
logotipo oficial HTML5
Logo de HTML5
janeiro 2008
HTML5 foi publicado como um Projecto de Trabalho pela W3C.
Embora sua sintaxe se assemelha a de SGML , HTML5 abandonou qualquer tentativa de ser uma aplicação SGML e definiu explicitamente seu próprio serialização "html", além de uma serialização XHTML5 alternativa baseada em XML.
2011 HTML5 - Last Call
Em 14 de Fevereiro de 2011, o W3C estendido a carta de seu Grupo de Trabalho HTML com metas claras para HTML5. Em maio de 2011, o grupo de trabalho avançado HTML5 para "Last Call", um convite para comunidades dentro e fora W3C para confirmar a solidez técnica da especificação. O W3C desenvolveu um conjunto de testes abrangentes para alcançar ampla interoperabilidade para a especificação completa em 2014, que foi a data-alvo para recomendação. Em janeiro de 2011, o WHATWG renomeou sua "HTML5" padrão de vida para "HTML". O W3C no entanto, continua seu projeto para lançar HTML5.
2012 HTML5 - Recomendação Candidate
Em julho de 2012, WHATWG e W3C decidiu, em um grau de separação. W3C vai continuar o trabalho de especificação HTML5, com foco em uma única norma definitiva, que é considerado como um "instantâneo" por WHATWG. A organização WHATWG continuará seu trabalho com HTML5 como um "padrão de vida". O conceito de um padrão de vida é que ele nunca é completa e está sempre sendo atualizado e melhorado. Novos recursos podem ser adicionados, mas a funcionalidade não serão removidos.
Em dezembro de 2012, W3C designado HTML5 como uma Recomendação Candidate. O critério de avanço a Recomendação W3C é "duas implementações 100% completa e totalmente interoperabilidade".
2014 HTML5 - Proposta de Recomendação e Recomendação
Em setembro de 2014, W3C mudou HTML5 a recomendação proposta.
Em 28 de Outubro de 2014, HTML5 foi libertado como uma recomendação de W3C estável, significando que o processo de especificação é completa.

versões em XHTML

XHTML é uma linguagem separada que começou como uma reformulação do HTML 4.01 usando XML 1.0. Ele não está mais sendo desenvolvido como um padrão separado.

  • XHTML 1.0 foi publicado como uma recomendação W3C em 26 de janeiro de 2000, e mais tarde foi revista e republicada em 1º de agosto de 2002. Ele oferece os mesmos três variações como HTML 4.0 e 4.01, reformulado em XML, com restrições menores.
  • XHTML 1.1 foi publicado como uma recomendação W3C em 31 de maio de 2001. É baseado em XHTML 1.0 Strict, mas inclui pequenas alterações, pode ser personalizado, e é reformulado utilizando módulos na recomendação W3C "Modularização de XHTML", que foi publicado em 10 abril de 2001.
  • XHTML 2.0 foi um projecto de trabalho, trabalho em que foi abandonado em 2009, em favor do trabalho em HTML5 e XHTML5 . XHTML 2.0 era incompatível com XHTML 1.x e, por conseguinte, iria ser caracterizada de forma mais precisa como uma nova linguagem de inspiração XHTML do que uma actualização para XHTML 1.x
  • Uma sintaxe XHTML, conhecido como "XHTML5.1", está sendo definido ao lado HTML5 no projecto de HTML5.

remarcação

Marcação HTML é composto por vários componentes-chave, incluindo as chamadas marcas (e seus atributos ), baseados em caracteres tipos de dados , referências de caracteres e referências de entidade . Tags HTML mais comumente vêm em pares como e , embora alguns representam elementos vazios e por isso são não pareado, por exemplo . A primeira marcação de tal par é a marca de início , e o segundo é a marca de fim (que também são chamados de tags de abertura e fecho Tag ). <h1></h1><img>

Outro componente importante é o HTML declaração de tipo de documento , o que desencadeia o modo de padrões de renderização.

O seguinte é um exemplo do clássico "Olá, mundo!" programa :

<!DOCTYPE html>
<html>
  <head>
    <title>This is a title</title>
  </head>
  <body>
    <p>Hello world!</p>
  </body>
</html>

O texto entre e descreve a página da web, e o texto entre e é o conteúdo da página visível. O texto de marcação define o título da página do browser. <html></html><body></body><title>This is a title</title>

A Declaração de Tipo de Documento <!DOCTYPE html>é para HTML5. Se a declaração não for incluída, vários navegadores irá reverter para " modo quirks " para renderização.

elementos

Documentos HTML implica uma estrutura de aninhadas elementos HTML . Estas são indicadas no documento de HTML marcas , entre colchetes angulares assim: .<p>

No caso mais simples, em geral, a extensão de um elemento é indicada por um par de tags: uma "marca de início" e "marca de fim" . O conteúdo de texto do elemento, se houver, é colocado entre essas tags. <p></p>

As etiquetas podem também incluir mais etiqueta de marcação entre o início e o fim, incluindo uma mistura de etiquetas e texto. Isto indica mais elementos (aninhados), como crianças do elemento pai.

A marca de início também podem incluir atributos dentro da tag. Estes indicam outras informações, tais como identificadores para seções dentro do documento, identificadores utilizados para ligar informações de estilo para a apresentação do documento, e para algumas marcas, como o usado para incorporar imagens, a referência para o recurso de imagem. <img>

Alguns elementos, como a quebra de linha , não permitem qualquer conteúdo incorporado, texto ou mais tags. Estes requerem apenas um único identificador vazio (semelhante a uma marca de início) e não utilize uma marca de fim. <br>

Muitas marcas, particularmente a marca de fim de fechamento para o elemento parágrafo muito comumente usados , são opcionais. Um navegador HTML ou outro agente pode inferir o encerramento para o final de um elemento do contexto e as regras estruturais definidos pelo padrão HTML. Estas regras são complexas e não é amplamente entendida pela maioria dos programadores HTML. <p>

A forma geral de um elemento de HTML é, por conseguinte,: . Alguns elementos HTML são definidos como elementos vazios e assumir a forma . Os elementos vazios podem incluir nenhum conteúdo, por exemplo, a etiqueta ou a linha Tag. O nome de um elemento HTML é o nome usado nas tags. Note que o nome da marca final é precedida por um caractere de barra, e que em elementos vazios a marca de fim não é necessário nem permitido. Se os atributos não são mencionados, os valores padrão são utilizados em cada caso. <tag attribute1="value1" attribute2="value2">''content''</tag><tag attribute1="value1" attribute2="value2"><br><img>/

exemplos de elementos

Cabeçalho do documento HTML: . O título está incluído na cabeça, por exemplo: <head>...</head>

<head>
  <title>The Title</title>
</head>

Títulos: títulos HTML são definidas com a de tags: <h1><h6>

<h1>Heading level 1</h1>
<h2>Heading level 2</h2>
<h3>Heading level 3</h3>
<h4>Heading level 4</h4>
<h5>Heading level 5</h5>
<h6>Heading level 6</h6>

parágrafos:

<p>Paragraph 1</p> <p>Paragraph 2</p>

Quebras de linha: . A diferença entre e é que quebra uma linha sem alterar a estrutura semântica da página, enquanto seções da página em parágrafos . Note também que é um elemento vazio em que, embora possa ter atributos, pode levar nenhum conteúdo e não pode ter uma tag final. <br><br><p>br pbr

<p>This <br> is a paragraph <br> with <br> line breaks</p>

Este é um link em HTML. Para criar um link da tag é usada. O atributo contém o endereço URL do link. <a>href

<a href="https://www.wikipedia.org/">A link to Wikipedia!</a>

entradas:

Há muitas maneiras possíveis que um usuário pode dar entrada / s como:

1 <input type="text" /> <!-- This is for text input -->
2 <input type="file" /> <!-- This is for uploading files -->
3 <input type="checkbox" /> <!-- This is for checkboxes -->

Comentários:

<!-- This is a comment -->

Os comentários podem ajudar na compreensão da marcação e não são exibidos na página da Web.

Existem vários tipos de elementos de marcação utilizados em HTML:

marcação estrutural indica a finalidade do texto
Por exemplo, estabelece "Golf" como um segundo nível título . Marcação estrutural não denota qualquer prestação específica, mas a maioria dos navegadores da web têm estilos padrão para elemento de formatação. O conteúdo pode ser denominado ainda usando Cascading Style Sheets (CSS).<h2>Golf</h2>
marcação de apresentação indica a aparência do texto, independentemente de sua finalidade
Por exemplo, indica que os dispositivos de saída visuais devem render "negrito" em negrito, mas dá pouca indicação que dispositivos que não são capazes de fazer isso (como dispositivos sonoros que lêem o texto em voz alta) deve fazer. No caso de ambos e , existem outros elementos que possam ter representações visuais equivalentes, mas que são mais semântica na natureza, tais como e respectivamente. É mais fácil ver como um agente de usuário aural deve interpretar os dois últimos elementos. No entanto, eles não são equivalentes aos seus homólogos de apresentação: seria indesejável para um leitor de tela para enfatizar o nome de um livro, por exemplo, mas em uma tela de tal nome seria em itálico. A maioria dos elementos de marcação de apresentação tornaram-se obsoletos sob a especificação HTML 4.0 em favor do uso de CSS para o estilo.<b>boldface</b><b>bold</b><i>italic</i><strong>strong text</strong><em>emphasized text</em>
Hypertext Markup faz partes de um documento em links para outros documentos
Um elemento âncora cria um hyperlink no documento e seu hrefatributo define alvo do link URL . Por exemplo, a marcação HTML , irá processar a palavra " Wikipedia " como um hiperlink. Para renderizar uma imagem como um hiperlink, um elemento é inserido como conteúdo para o elemento. Como , é um elemento vazio com atributos, mas nenhum conteúdo ou tag de fechamento. .<a href="https://www.google.com/">Wikipedia</a>imgabrimg<a href="https://example.org"><img src="image.gif" alt="descriptive text" width="50" height="50" border="0"></a>

Atributos

A maioria dos atributos de um elemento são pares nome-valor , separadas por =e escritas dentro da tag de início de um elemento após o nome do elemento. O valor pode estar entre aspas simples ou duplas, embora valores que consistem em determinados caracteres podem ser deixados sem aspas em HTML (mas não XHTML). Deixando de valores de atributos sem aspas é considerado inseguro. Em contraste com o nome de valor atributos par, há alguns atributos que afectam o elemento simplesmente pela sua presença na marca de início do elemento, como o ismapatributo para o imgelemento.

Há vários atributos comuns que podem aparecer em muitos elementos:

  • O idatributo fornece um identificador exclusivo abrange todo o documento para um elemento. Isto é usado para identificar o elemento de modo que as folhas de estilo podem alterar as suas propriedades de apresentação e os scripts podem alterar, animar ou apagar seu conteúdo ou apresentação. Anexado ao URL da página, ele fornece um identificador exclusivo para o elemento, tipicamente uma sub-seção da página. Por exemplo, o ID "Atributos" no https://en.wikipedia.org/wiki/HTML#Attributes.
  • O classatributo proporciona um modo de classificar elementos semelhantes. Isso pode ser usado para semânticas fins ou apresentação. Por exemplo, um documento HTML pode semanticamente utilizar a denominação para indicar que todos os elementos com este valor de classe são subordinados ao texto principal do documento. Na apresentação, tais elementos podem ser reunidos e apresentados como notas de rodapé em uma página em vez de aparecer no lugar onde elas ocorrem em HTML. Atributos de classe são usados em semanticamente microformatos . Vários valores de classe pode ser especificado; por exemplo, coloca o elemento em ambos os e as classes.<class="notation"><class="notation important">notationimportant
  • Um autor pode usar o styleatributo para atribuir propriedades de apresentação a um elemento particular. É considerado melhor prática para usar um elemento de idou classatributos para selecionar o elemento de dentro de uma folha de estilo , embora às vezes isso pode ser demasiado pesado para um estilo simples, específico, ou ad hoc.
  • O titleatributo é usado para anexar explicação subtextual a um elemento. Na maioria dos navegadores este atributo é exibido como uma dica de ferramenta .
  • O langatributo identifica a linguagem natural do conteúdo do elemento, que pode ser diferente da do resto do documento. Por exemplo, em um documento em língua Inglês:
    <p>Oh well, <span lang="fr">c'est la vie</span>, as they say in France.</p>
    

O elemento de abreviatura, abbr, pode ser utilizado para demonstrar alguns destes atributos:

<abbr id="anId" class="jargon" style="color:purple;" title="Hypertext Markup Language">HTML</abbr>

Este exemplo exibe como HTML ; na maioria dos navegadores, apontando o cursor no abreviatura deve exibir o texto do título "Hypertext Markup Language".

A maioria dos elementos tomar o atributo relacionado a linguagem dirpara especificar a direção do texto, como com "RTL" para texto da direita para a esquerda, por exemplo, árabe , persa ou hebraico .

referências de caráter e de entidades

A partir da versão 4.0, HTML define um conjunto de 252 referências de entidade de caráter e um conjunto de 1,114,050 referências de caracteres numéricos , os quais permitem caracteres individuais a ser escrito através de marcação simples, em vez de literalmente. Um personagem literal e sua contraparte marcação são consideradas equivalentes e são prestados de forma idêntica.

A capacidade de "escapar" personagens desta forma permite que os personagens <e &(quando escrito como &lt;e &amp;, respectivamente) devem ser interpretados como dados de caracteres, ao invés de marcação. Por exemplo, um literal <normalmente indica o início de uma marcação, e &normalmente indica o início de uma entidade de referência carácter ou caracteres numéricos de referência; escrevê-lo como &amp;ou &#x26;ou &#38;permite &ser incluído no conteúdo de um elemento ou no valor de um atributo. O caractere de aspas duplas ( "), quando não é usado para citar um valor de atributo, também deve ser escapado como &quot;ou &#x22;ou &#34;quando ele aparece dentro do próprio valor do atributo. Equivalentemente, o personagem-aspas simples ( '), quando não é usado para citar um valor de atributo, também deve ser escapado como &#x27;ou &#39;(ou como &apos;em HTML5 ou documentos XHTML) quando ele aparece dentro do próprio valor do atributo. Se os autores de documentos ignorar a necessidade de escapar tais personagens, alguns navegadores pode ser muito indulgente e tentar usar o contexto de adivinhar suas intenções. O resultado ainda é marcação inválida, o que torna o documento mais acessível a outros navegadores e outros agentes do usuário que podem tentar analisar o documento para busca e indexação fins, por exemplo.

Escapando também permite a personagens que não são facilmente digitadas ou que não estão disponíveis no documento codificação de caracteres , para ser representado dentro de elementos e atributos de conteúdo. Por exemplo, o acentuado-aguda e( é), um personagem tipicamente encontrados somente em teclados europeus e sul-americanos ocidentais, pode ser escrito em qualquer documento HTML como a referência de entidade &eacute;ou como as referências numéricas &#xE9;ou &#233;, usando caracteres que estão disponíveis em todos os teclados e são suportados em todas as codificações de caracteres. Unicode codificação de caracteres como UTF-8 são compatíveis com todos os navegadores modernos e permitir o acesso direto a quase todos os personagens de sistemas de escrita do mundo.

Tipos de dados

HTML define vários tipos de dados para o conteúdo do elemento, tais como dados de script e dados de estilo, e uma infinidade de tipos de valores de atributos, incluindo IDs, nomes, URIs, números, unidades de comprimento, línguas, descritores de mídia, cores, codificação de caracteres, datas e tempos, e assim por diante. Todos estes tipos de dados são especializações de dados de caracteres.

declaração de tipo de documento

Documentos HTML são necessários para iniciar com uma declaração Tipo de Documento (informalmente, um "doctype"). Em navegadores, o doctype ajuda a definir a prestação modo particularmente se pretende utilizar o modo de peculiaridades .

O propósito original da doctype era permitir a análise e validação de documentos HTML por ferramentas SGML com base no Document Type Definition (DTD). O DTD ao qual o DOCTYPE se refere contém uma gramática legível por máquina especificando o conteúdo permitido e proibido para um documento conforme a tal DTD. Navegadores, por outro lado, não implementar HTML como uma aplicação da SGML e por conseqüência não ler o DTD.

HTML5 não define um DTD; portanto, em HTML5 a declaração doctype é mais simples e mais curto:

<!DOCTYPE html>

Um exemplo de um tipo de documento HTML 4

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "https://www.w3.org/TR/html4/strict.dtd">

Esta declaração faz referência ao DTD para a versão "estrita" do HTML 4.01. Validadores baseados em SGML ler a DTD, a fim de analisar corretamente o documento e para executar a validação. Em navegadores modernos, um doctype válido ativa o modo de padrões em oposição ao modo de peculiaridades .

Além disso, o HTML 4.01 fornece DTD transitórias e de quadros, tal como explicado abaixo . Tipo de transição é o mais abrangente, incorporando marcas atuais, bem como ou tags mais velhos "obsoleta", com o DTD Strict excluindo marcas obsoletas. Conjunto de quadros tem todas as tags necessárias para fazer quadros em uma página, juntamente com as tags incluídas no tipo de transição.

semântica HTML

HTML semântica é uma maneira de escrever HTML que enfatiza o significado da informação codificada sobre a sua apresentação (olhar). HTML incluiu marcação semântica desde o seu início, mas também incluiu marcação de apresentação, tais como , e tags. Há também os semanticamente neutro span e div tags. Desde o final dos anos 1990, quando Cascading Style Sheets estavam começando a trabalhar na maioria dos navegadores, os autores de web têm sido encorajados a evitar o uso de marcação HTML de apresentação com vista à separação de apresentação e conteúdo .<font><i><center>

Em uma discussão de 2001 Semantic Web , Tim Berners-Lee e outros deram exemplos de maneiras em que "agentes" de software inteligente pode rastrear um dia automaticamente a web e encontrar, filtro e correlacionar fatos anteriormente não relacionados, publicados para benefício dos utilizadores humanos . Tais agentes não são comuns, mesmo agora, mas algumas das ideias de Web 2.0 , mashups e sites de comparação de preços pode estar chegando perto. A principal diferença entre esses híbridos de aplicação web e agentes semânticos mentiras de Berners-Lee no fato de que a corrente de agregação e hibridação de informação é normalmente projetado pelos desenvolvedores web , que já conhecem os locais da web e os semântica API dos dados específicos que desejam a mash, comparar e combinar.

Um tipo importante de agente web que faz rastreamento e páginas da web ler automaticamente, sem conhecimento prévio do que poderia encontrar, é o web crawler ou spider-motor de busca. Estes agentes de software são dependentes da clareza semântica das páginas da web que encontrar como eles usam várias técnicas e algoritmos para ler e milhões de índice de páginas da web por dia e fornecer os usuários da Internet com facilidades de busca sem a qual a utilidade da World Wide Web seria muito reduzida.

Para que as aranhas do Search Engine para ser capaz de avaliar a importância dos pedaços de texto que encontrar em documentos HTML, e também para aqueles mashups criando e outros híbridos, bem como para os agentes mais automatizados como eles são desenvolvidos, as estruturas semânticas que existem em HTML precisa ser amplamente e aplicadas de forma uniforme para trazer para fora o significado do texto publicado.

Tags de marcação de apresentação são obsoleto em HTML e atuais XHTML recomendações. A maioria dos elementos de apresentação de versões anteriores do HTML não são permitidas como eles levam a acessibilidade mais pobre, maior custo de manutenção do site, e tamanhos maiores de documentos.

Boa HTML semântica também melhora a acessibilidade de documentos web (ver também Directrizes Web Content Accessibility ). Por exemplo, quando um leitor de tela ou navegador de áudio pode determinar corretamente a estrutura de um documento, ele não vai perder tempo do usuário com deficiência visual, lendo as informações repetidas ou irrelevante quando foi marcado corretamente.

Entrega

Documentos HTML podem ser entregues pelos mesmos meios como qualquer outro arquivo de computador. No entanto, eles são mais frequentemente entregues quer por HTTP a partir de um servidor web ou por e-mail .

HTTP

A World Wide Web é composto principalmente de documentos HTML transmitidos de servidores web para navegadores web utilizando o Hypertext Transfer Protocol (HTTP). No entanto, o HTTP é usado para servir imagens, som e outros conteúdos, além de HTML. Para permitir que o navegador da Web para saber como lidar com cada documento que recebe, outras informações são transmitidas juntamente com o documento. Este dados meta geralmente inclui o tipo MIME (por exemplo, text/htmlou application/xhtml+xml) e a codificação de caracteres (ver codificação de caracteres em HTML ).

Em navegadores modernos, o tipo MIME que é enviado com o documento HTML pode afetar a forma como o documento é inicialmente interpretado. Um documento enviado com o tipo XHTML MIME é esperado para ser bem-formado XML; erros de sintaxe pode fazer com que o navegador para não torná-lo. O mesmo documento foi enviado com o tipo HTML MIME pode ser exibido com sucesso, uma vez que alguns navegadores são mais tolerantes com HTML.

As recomendações do W3C afirmam que XHTML 1.0 documentos que seguem diretrizes estabelecidas da recomendação Anexo C pode ser rotulado com qualquer tipo MIME. XHTML 1.1 também afirma que XHTML 1.1 documentos devem ser rotulados com qualquer tipo MIME.

HTML e-mail

A maioria dos clientes de email gráficos permitem o uso de um subconjunto de HTML (muitas vezes mal definida) para fornecer formatação e semântica de marcação não está disponível com texto simples . Isso pode incluir informações tipográficas como títulos coloridos, enfatizou eo texto citado, imagens inline e diagramas. Muitos desses clientes incluem tanto uma GUI editor para compor mensagens de correio electrónico em HTML e um motor de renderização para exibi-los. Uso de HTML em e-mail é criticada por alguns por causa de problemas de compatibilidade, porque pode ajudar a disfarçar phishing ataques, por causa de questões de acessibilidade para pessoas cegas ou deficientes visuais, porque pode confundir de spam filtros e porque o tamanho da mensagem é maior do que simples texto.

convenções de nomenclatura

O mais comum extensão de arquivo para arquivos que contêm HTML é .html. A abreviatura comum é .htm, que se originou porque alguns sistemas operacionais mais antigos e sistemas de arquivos, como o DOS e as limitações impostas pelo FAT estrutura de dados, extensões de arquivos limitados a três letras .

Aplicação HTML

Um aplicativo HTML (HTA; extensão de arquivo ".hta") é um Microsoft Windows aplicativo que usa HTML e Dynamic HTML em um navegador para fornecer a interface gráfica da aplicação. Um arquivo HTML normal se limita ao modelo de segurança de segurança do navegador , comunicando apenas para servidores web e manipulação única objetos da página web e os cookies do site . Um HTA é executado como um aplicativo totalmente confiável e, portanto, tem mais privilégios, como a criação / edição / remoção de arquivos e do Registro do Windows entradas. Porque operam fora modelo de segurança do navegador, HTAs não pode ser executado via HTTP, mas deve ser baixado (apenas como um arquivo EXE ) e executado a partir do sistema de arquivos local.

variações HTML4

Desde a sua criação, HTML e seus protocolos associados ganhou aceitação relativamente rápida. No entanto, há padrões claros existia nos primeiros anos da língua. Embora seus criadores originalmente concebido de HTML como uma linguagem semântica desprovido de detalhes da apresentação, usos práticos empurrou muitos elementos de apresentação e atributos para a língua, impulsionado em grande parte pelos diversos fabricantes de navegadores. As mais recentes normas que cercam HTML refletem os esforços para superar o desenvolvimento, por vezes caótica da língua e para criar uma base racional para a construção de ambos os documentos significativos e bem apresentados. Para retornar HTML ao seu papel como uma linguagem semântica, o W3C idiomas estilo se desenvolveu como CSS e XSL para arcar com o ônus de apresentação. Em conjunto, a especificação HTML tem lentamente refreado os elementos de apresentação.

Existem dois eixos diferenciais várias variações de HTML como actualmente especificado: baseada em HTML SGML contra HTML baseada em XML (referido como XHTML) sobre um eixo, e rigorosa contra transitório (solta) versus conjunto de quadros no outro eixo.

SGML à base de comparação HTML baseada em XML

Uma diferença nas últimas especificações HTML está na distinção entre a especificação baseada em SGML ea especificação baseada em XML. A especificação baseada em XML é geralmente chamado XHTML para distingui-lo claramente da definição mais tradicional. No entanto, o nome do elemento raiz continua a ser "html" mesmo no HTML especificado pelo XHTML. O W3C destina XHTML 1.0 para ser idêntico ao HTML 4.01, exceto onde as limitações de XML sobre o SGML mais complexas exigem soluções alternativas. Porque XHTML e HTML estão intimamente relacionados, eles às vezes são documentados em paralelo. Em tais circunstâncias, alguns autores confundem os dois nomes como (X) HTML ou X (HTML).

Como HTML 4.01, XHTML 1.0 tem três sub-especificações: estrita, de transição e do conjunto de quadros.

Para além das diferentes declarações de abertura para um documento, as diferenças entre um HTML 4.01 e XHTML 1,0-documento em cada um dos correspondentes DTD-são em grande parte sintáctica. A sintaxe subjacente do HTML permite que muitos atalhos que XHTML não, como elementos com abertura ou encerramento de tags opcionais, e até mesmo os elementos vazios que não deve ter uma tag final. Em contraste, XHTML exige que todos os elementos que têm uma marca de abertura e uma etiqueta de fecho. XHTML, no entanto, também introduz um novo atalho: uma etiqueta XHTML pode ser aberto e fechado dentro da mesma etiqueta, através da inclusão de uma barra antes do final da tag como este: . A introdução deste taquigrafia, que não é utilizado na declaração SGML para HTML 4.01, pode confundir software anteriormente não familiarizados com esta nova convenção. Uma correção para isso é incluir um espaço antes de fechar a tag, como tal: .<br/><br />

Para entender as sutis diferenças entre HTML e XHTML, considere a transformação de um documento XHTML 1.0 válido e bem formado que adere ao Anexo C (veja abaixo) em um documento HTML válido 4.01. Para fazer esta tradução requer as seguintes etapas:

  1. A linguagem para um elemento deve ser especificado com um langatributo em vez do XHTML xml:langatributo. XHTML usa XML é construído em atributo funcionalidade de definição de idioma.
  2. Remova o namespace XML ( xmlns=URI). HTML não tem instalações para namespaces.
  3. Altere a declaração de tipo de documento de XHTML 1.0 para HTML 4.01. (ver secção DTD para mais explicações).
  4. Se estiver presente, remover a declaração XML. (Tipicamente isto é: <?xml version="1.0" encoding="utf-8"?>).
  5. Garantir que o tipo MIME do documento está definido para text/html. Para HTML e XHTML, este vem do HTTP Content-Typecabeçalho enviado pelo servidor.
  6. Alterar o XML de elemento vazio sintaxe para um elemento vazio estilo HTML ( a ).<br /><br>

Essas são as principais mudanças necessárias para traduzir um documento de XHTML 1.0 para HTML 4.01. Para traduzir de HTML para XHTML também exigiria a adição de qualquer abertura omitido ou marcas de fechamento. Se a codificação em HTML ou XHTML só ele pode ser melhor para sempre incluir as tags opcionais dentro de um documento HTML em vez de lembrar que as tags podem ser omitidos.

Um documento XHTML bem formados adere a todos os requisitos de sintaxe de XML. Um documento válido adere à especificação de conteúdo para XHTML, que descreve a estrutura do documento.

O W3C recomenda várias convenções para garantir uma migração fácil entre HTML e XHTML (ver Diretrizes de Compatibilidade HTML ). Os passos seguintes podem ser aplicados a XHTML 1.0 documentos únicos:

  • Incluir tanto xml:lange langatributos de quaisquer elementos de atribuição de linguagem.
  • Utilizar a sintaxe de elemento vazio apenas para elementos especificados como vazio em HTML.
  • Incluir um espaço extra em tags de elemento vazio: por exemplo , em vez de .<br /><br>
  • Incluir tags perto explícitas para elementos que permitem conteúdo, mas são deixados vazios (por exemplo, não ).<div></div><div />
  • Omitir a declaração XML.

Ao seguir cuidadosamente as orientações de compatibilidade do W3C, um agente de usuário deve ser capaz de interpretar o documento igualmente como HTML ou XHTML. Para documentos que são XHTML 1.0 e foram feitos compatíveis, desta forma, o W3C lhes permite ser servidos como HTML (com um text/html tipo MIME ), ou como XHTML (com uma application/xhtml+xmlou application/xmltipo MIME). Quando entregue como XHTML, navegadores devem usar um parser XML, que adere estritamente as especificações XML para analisar o conteúdo do documento.

Transitório contra estrita

HTML 4 definiu três versões diferentes da língua: estrito, de Transição (uma vez chamados fraco) e conjunto de quadros. A versão estrita é destinado a novos documentos e é considerada a melhor prática, enquanto as versões transitórias e conjunto do quadro foram desenvolvidos para tornar mais fácil a transição documentos que conformaram com a especificação HTML mais velhas ou não satisfaçam a qualquer especificação para uma versão do HTML 4. as versões transitórias e conjunto do quadro permitem marcação de apresentação, que é omitido na versão estrita. Em vez disso, em cascata folhas de estilo são incentivados a melhorar a apresentação de documentos HTML. Porque XHTML 1 só define uma sintaxe XML para o idioma definido pelo HTML 4, as mesmas diferenças aplicam-se a XHTML 1 também.

A versão de Transição permite as seguintes partes do vocabulário, que não estão incluídos na versão estrita:

  • Um modelo de conteúdo looser
    • Elementos inline e texto simples são permitidos diretamente em: body, blockquote, form, noscriptenoframes
  • elementos relacionados com apresentação
    • sublinhado ( u) (preterido. pode confundir um visitante com um hiperlink.)
    • strike-through ( s)
    • center (Obsoleto. Usar CSS em vez disso.)
    • font (Obsoleto. Usar CSS em vez disso.)
    • basefont (Obsoleto. Usar CSS em vez disso.)
  • atributos relacionados Apresentação
    • background(Reprovado. Usar CSS em vez disso.) E bgcolor(Reprovado. Usar CSS vez.) Atributos de body(elemento necessário de acordo com o W3C.) Elemento.
    • align(Obsoleto. Usar CSS em vez disso.) Atribuem on div, form, parágrafo ( p) e rumo ( h1... h6) elementos
    • align(Reprovado. Usar CSS em vez disso.), noshade(Reprovado. Usar CSS em vez disso.), size(Reprovado. Usar CSS em vez disso.) E width(Reprovado. Usar CSS vez.) Atributos no hrelemento
    • align(Obsoleto usar CSS em vez disso..), border, vspaceE hspaceatributos de imge object(cuidado: o objectelemento só é suportada no Internet Explorer (a partir dos principais navegadores)) elementos
    • align(Obsoleto. Usar CSS em vez disso.) Atribuem on legende captionelementos
    • align(Obsoleto. Usar CSS em vez disso.) E bgcolor(Preterido. Usar CSS em vez disso.) No tableelemento
    • nowrap(Obsoleto), bgcolor(Preterido. Usar CSS em vez disso.), width, heightEm tde thelementos
    • bgcolor(Obsoleto. Usar CSS em vez disso.) Atribuem em trelemento
    • clearAtributo (obsoleto) no brelemento
    • compactatributo em dl, dire menuelementos
    • type(Obsoleto. Usar CSS em vez disso.), compact(Preterido. Usar CSS em vez disso.) E start(Preterido. Usar CSS em vez disso.) Atribui on ole ulelementos
    • typee valueatributos de lielemento
    • widthatributo no preelemento
  • Elementos adicionais na especificação de Transição
    • menu (Obsoleto. Usar CSS em vez disso.) Lista (nenhum substituto, embora lista não ordenada é recomendado)
    • dir (Obsoleto. Usar CSS em vez disso.) Lista (nenhum substituto, embora lista não ordenada é recomendado)
    • isindex(Reprovado.) (Elemento requer suporte do lado do servidor e é tipicamente adicionado aos documentos do lado do servidor, forme inputelementos pode ser utilizada como um substituto)
    • applet(Reprovado. Usar o objectelemento em vez disso.)
  • O languageatributo (Obsoleto) no elemento de script (redundante com o typeatributo).
  • entidades de quadros relacionados com
    • iframe
    • noframes
    • target(Preteridas na map, linke formelementos.) Atributo em a, do lado do cliente de imagem de mapa ( map), link, forme baseelementos

A versão Frameset inclui tudo na versão de Transição, bem como o framesetelemento (usado em vez de body) eo frameelemento.

Conjunto de quadros em relação transitório

Além das diferenças de transição acima referidas, as especificações de conjuntos de quadros (XHTML se 1,0 ou HTML 4.01) especificar um modelo de conteúdo diferente, com frameseta substituição body, que contém ambos frameos elementos, ou, opcionalmente, noframescom um body.

Resumo de versões de especificação

Como esta lista demonstra, as versões soltas da especificação são mantidas para suporte legado. No entanto, ao contrário do popular equívocos, a mudança para XHTML não implica a remoção deste suporte legado. Pelo contrário, o X em XML significa Extensible eo W3C é modularizing toda a especificação e abri-lo até extensões independentes. A concretização principal no movimento de XHTML 1,0 a 1,1 XHTML é a modularização de toda a especificação. A versão de HTML rigorosa é implantado em XHTML 1.1 por meio de um conjunto de extensões modulares para a base especificação XHTML 1.1. Da mesma forma, alguém que procura as (transitórias) soltos especificações ou conjunto de quadros vai encontrar suporte estendido semelhante XHTML 1.1 (muito do que está contido nos módulos de legado ou quadro). A modularização também permite recursos separados para desenvolver em seu próprio calendário. Assim, por exemplo, XHTML 1.1 vai permitir a migração mais rápida para emergentes padrões XML como MathML (a linguagem matemática de apresentação e semântica baseada em XML) e XForms -a nova altamente avançada tecnologia de formulário web para substituir os formulários HTML existentes.

Em resumo, a especificação HTML 4 freou principalmente em todas as várias implementações HTML em uma única especificação claramente escrito baseado em SGML. XHTML 1.0, portado esta especificação, como é, para o novo XML especificação definida. Em seguida, XHTML 1.1 aproveita a natureza extensível do XML e modulariza toda a especificação. XHTML 2.0 foi destinado a ser o primeiro passo na adição de novas características para a especificação de uma abordagem com base em padrões de corpo.

variantes HTML5

WHATWG HTML contra HTML5

O WHATWG considera seu trabalho como vivendo padrão HTML para o que constitui o estado da arte em grandes implementações do navegador pela Apple ( Safari ), Microsoft ( Borda ), Google ( Chrome ), Mozilla ( Firefox ), Opera ( Opera ), e outros. HTML5 é especificado pelo Grupo de Trabalho HTML do W3C após o processo de W3C. A partir de 2013, ambas as especificações são semelhantes e principalmente derivados do outro, ou seja, o trabalho em HTML5 começou com um projecto WHATWG mais velhos, e mais tarde o WHATWG padrão de vida foi baseada em rascunhos HTML5 em 2011.

Hypertext não apresenta em HTML

HTML carece de algumas das características encontradas em sistemas de hipertexto anteriores, como rastreamento de origem , ligações de gordura e outros. Mesmo alguns recursos de hipertexto que estavam em versões anteriores do HTML têm sido ignorados por navegadores da web mais populares até recentemente, como o elemento link e no navegador edição de páginas Web.

Às vezes, os desenvolvedores web ou fabricantes de navegadores colmatar estas lacunas. Por exemplo, wikis e sistemas de gerenciamento de conteúdo permitem que os surfistas para editar as páginas da Web que visitam.

editores WYSIWYG

Há algumas WYSIWYG editores (What You See Is What You Get), no qual o usuário define tudo como está para aparecer no documento HTML usando uma interface gráfica de usuário (GUI), muitas vezes semelhantes aos processadores de texto . O editor torna o documento em vez de mostrar o código, assim que os autores não necessitam de amplo conhecimento de HTML.

O modelo de edição WYSIWYG tem sido criticado, principalmente por causa da baixa qualidade do código gerado; há vozes que defendem uma mudança no WYSIWYM modelo (What You See Is What You Mean).

editores WYSIWYG continuar a ser um tema controverso por causa de suas falhas percebidas, tais como:

  • Baseando-se principalmente na disposição em oposição ao significado, muitas vezes usando marcação que não transmite o significado pretendido, mas simplesmente copia o layout.
  • Muitas vezes produzir código extremamente detalhado e redundante que deixa de fazer uso da natureza em cascata de HTML e CSS .
  • Produzindo muitas vezes marcação ungrammatical, chamado sopa de tag ou marcação semanticamente incorretas (como para itálico).<em>
  • Como uma grande quantidade de informações em documentos HTML não é no layout, o modelo tem sido criticado por sua "o que você vê é tudo que você começa" -natureza.

Veja também

Referências

links externos