cefet_front_end

~

HTML parte 1


Na última aula…


Hoje vamos…

  1. Rever o funcionamento dos servidores e navegadores
  2. Conhecer a estrutura básica de um arquivo HTML
  3. Aprender algumas tags HTML para texto:
    • parágrafos <p>...</p>
    • títulos <h1>...</h1>, ou <h2>...</h2> etc. (até <h6>...</h6>)
    • imagens <img src="...">
    • hiperlinks <a href="">...</a>
  4. Entender um pouco de estilo CSS:
    • color, background-color
    • margin, text-align

Funcionamento da Web

Como o navegador conversa com o servidor


O que um navegador faz?

  1. Requisição:
    GET /index.html HTTP/1.1
    Host: www.twitter.com
    
  2. Resposta:
    HTTP/1.1 200 OK
    Date: Mon, 23 May 2005 22:38:34 GMT
    Server: Apache/1.3.3.7 (Unix) (Red-Hat/Linux)
    Content-Type: text/html; charset=UTF-8
    Content-Length: 131 
    
    <!DOCTYPE html>
    <html>
    <head>
      <title>Twitter</title>
    </head>
    <body>
      Olá mundo, este é um tweet.
    </body>
    </html>
    

O que é um URL?


Estrutura Básica do HTML

Estrutura


CÓDIGO

RESULTADO


Estrutura de um arquivo HTML


A tag <html>

<!DOCTYPE html>          
<html>  ⬅️         
  <head>
    ...
  </head>
  <body>
    ...
  </body>
</html> ⬅️

A tag <head>

<!DOCTYPE html>
<html>
  <head>   ⬅️
    <meta charset="utf-8">  <!-- codific. -->
    <title>Título na aba/janela</title>
    <link rel="icon" href="icone.png">
    ...
  </head>  ⬅️
  <body>
    ...
  </body>
</html>

A tag <body>

<!DOCTYPE html>
<html>
  <head>...</head>
  <body>   ⬅️
    ...
    <h1>Título Grandão</h1>
    ...
    <p>Um textinho qualquer</p>
    <img src="estrela.png">
    ...
  </body>  ⬅️
<html>

Algumas tags HTML

tags HTML


Anatomia de uma tag

Anatomia de uma tag mostrando que ela consiste de seu nome envolto por sinais de "menor que" e "maior que"


Tag de Parágrafo (<p>...</p>)


Tag de Títulos e Subtítulos (h1, h2h6)

<h1>Título de 1º nível</h1>
<p>Este é o corpo da seção</p>
<h2>Subtítulo (2º nível)</h2>
<p>Este é o corpo da subseção</p>

Tag de Imagem: <img>

Mascote do programa GitKraken
Para exibir imagens…

  <img src="http://fegemo.github.io/kraken-typing/imgs/kraken.png">

URL externa vs interna

URL externa Aponta para algo (imagem etc.) de um outro site Quase sempre começa com http:// ou https://. Exemplos: - http://google.com - http://fegemo.github.io/imgs/kraken.png - https://twitter.com/fegemo

URL interna Aponta para algo da própria página/site Pode ser um caminho relativo ou absoluto. - racas-raras.html relativo - imagens/ovelha.jpg relativo - ../imgs/logo.png relativo - /arquivos/fotosdafesta.zip absoluto


Exemplo 1: Arquivo HTML e imagem na mesma pasta


Exemplo 2: Imagem 1 pasta adentro

Página exibindo a descrição e imagem da Pira-tovelha Estrutura de pastas para demonstrar o endereço absoluto e relativo


Exemplo 3: Imagem 1 pasta acima

Página exibindo a descrição e imagem da Pira-tovelha Estrutura de pastas para demonstrar o endereço absoluto e relativo


Exemplo 4: Imagem 2 pastas acima

Página exibindo a descrição e imagem da Pira-tovelha Estrutura de pastas para demonstrar o endereço absoluto e relativo


Sumarizando: URLs absolutas e relativas

Estrutura de pastas para demonstrar o endereço absoluto e relativo

Endereço absoluto Endereço relativo
/ovelhas/racas/c.jpg c.jpg
/ovelhas/racas/xpto/d.jpg xpto/d.jpg
/ovelhas/b.jpg ../b.jpg
/a.jpg ../../a.jpg


Como o navegador vai desenhar as tags HTML?


Um pouco de estilo

Conhecendo CSS - Cascading Stylesheets


Definindo o estilo (aparência)


Definindo o estilo (cont.)


Entendendo o estilo: cores

  body {
    background-color: teal;    
  }

Define a cor (color) do fundo (background) para azul ocre (teal) Mas também poderia ser: orange, red, green, black etc.

  body {
    color: white;
  }

Define a cor do texto como branco


Entendendo o estilo: margens laterais

  body {
    margin-left: 20%;
    margin-right: 20%;
  }

Define as margens (espaço) laterais da página


Entendendo o estilo: fonte

  body {
    font-family: "Arial", sans-serif;
  }

Define a fonte do texto da página Dá 2 opções: se não tiver a 1ª, vai a 2ª

  h1 {
    font-family: "Courier New", monospace;
  }

Define a fonte sendo usada para o texto de todos <h1> na página


Entendendo o estilo: alinhamento do texto

  p {
    text-align: justify;
  }

  p {
    text-align: left; /* valor padrão */
  }

  p {
    text-align: right;
  }

  p {
    text-align: center;
  }

Referências

  1. Capítulo 1 do livro