Quando você navega ou abre uma página em um navegador da Web, você está essencialmente vendo o resultado interpretado de vários processos trabalhando juntos. Aqui está um colapso do que acontece e do que você acaba vendo:
1. A solicitação: *
você entra em um URL: Você digita um endereço da Web (como `www.example.com`) na barra de endereços ou clica em um link.
*
O navegador envia uma solicitação: O navegador usa o URL para determinar o endereço do servidor (através das pesquisas do DNS, se necessário) e envia uma solicitação HTTP para esse servidor. Esta solicitação solicita recursos específicos, mais comumente o arquivo HTML que representa a página da Web. Ele também inclui informações como o seu tipo de navegador, preferências de idiomas e cookies.
2. A resposta do servidor: *
Processamento do servidor: O servidor recebe a solicitação. Ele o processa, que pode envolver a recuperação de dados de um banco de dados, executando scripts do lado do servidor (como PHP, Python, Node.js) ou simplesmente localizando o arquivo solicitado em seu armazenamento.
*
O servidor envia uma resposta: O servidor envia de volta uma resposta HTTP. Esta resposta contém:
*
cabeçalhos http: Metadados sobre a resposta (por exemplo, tipo de conteúdo, instruções de cache, código de status como 200 ok ou 404 não encontrado).
*
O corpo de resposta: O conteúdo real da resposta, que é mais provável:
*
html (linguagem de marcação de hipertexto): A estrutura e o conteúdo da página da web. Isso define os títulos, parágrafos, links, imagens, etc.
*
CSS (folhas de estilo em cascata): As regras de estilo para como os elementos HTML devem ser exibidos (cores, fontes, layout etc.). O CSS pode ser incorporado no HTML, incluído em arquivos CSS separados ou vinculados a arquivos CSS externos.
*
javascript: Código que adiciona interatividade e comportamento dinâmico à página da web (animações, validação de formulários, solicitações de AJAX etc.). Como o CSS, o JavaScript pode ser incorporado, incluído em arquivos separados ou vinculado externamente.
*
Outros recursos: Imagens (JPEG, PNG, GIF, SVG), vídeos, arquivos de áudio, fontes, etc., referenciados pelo HTML, CSS ou JavaScript.
3. A renderização do navegador (o que você realmente vê): *
Parsing: O navegador * analisa * o html. Ele lê o código HTML e cria um *Modelo de Objeto de Documento (DOM) *. O DOM é uma representação semelhante a uma árvore da estrutura HTML na memória.
*
Construção CSSOM: O navegador analisa o CSS e constrói um modelo de objeto A *CSS (CSSOM) *. Isso representa as regras de estilo aplicadas aos elementos HTML.
*
Motor de renderização: Este é o coração do processo de exibição do navegador:
*
Combinando DOM e CSSOM: O navegador combina o DOM e o CSSOM para criar uma *árvore de renderização *. Esta árvore inclui apenas os elementos visíveis e seus estilos.
*
layout (reflow): O navegador calcula o tamanho e a posição de cada elemento na árvore de renderização. Isso é conhecido como *layout *ou *reflow *.
*
pintura (repintura): O navegador * pinta * cada elemento na tela, de acordo com o layout e os estilos calculados. Isso envolve desenhar o texto, cores, imagens, bordas, etc.
* Execução
JavaScript: O mecanismo JavaScript do navegador (por exemplo, V8 para Chrome, Spidermonkey for Firefox) executa o código JavaScript. Este código pode:
* Modifique o DOM:Adicione, remova ou altere os elementos HTML.
* Altere CSS:modifique os estilos de elementos.
* Faça solicitações do AJAX:busque dados adicionais do servidor sem recarregar a página inteira.
* Lidar com eventos do usuário:responda a cliques, entrada do teclado, etc.
Então, o que você finalmente * vê * é o resultado desse processo complexo: *
texto formatado: Chefes, parágrafos, listas, etc., estilizados de acordo com as regras do CSS.
*
Imagens: Exibido em seus locais especificados.
* Links
: Texto ou imagens que você pode clicar para navegar para outras páginas.
*
Elementos interativos: Botões, formas, animações e outros elementos que respondem às suas ações.
*
O layout geral e o design visual: A organização dos elementos da página, determinada pelo HTML, CSS e JavaScript.
em resumo: Você vê uma representação visualmente atraente e interativa do conteúdo entregue por um servidor da Web, graças à capacidade do navegador de analisar e renderizar HTML, CSS e JavaScript. É como ler uma receita (HTML), entender como estilizar os ingredientes (CSS) e adicionar um pouco de toque extra com uma técnica especial (JavaScript) para criar um prato delicioso (a página da web).