all repos — htmlepessoas.com @ 3772f6e2cb043381977c95d9796fece18e27eca3

Venha aprender HTML com um método simplificado.

src/05-adding-an-about-page.md (view raw)

 1
 2
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
 100
 101
 102
 103
 104
 105
 106
 107
 108
 109
 110
 111
 112
 113
 114
 115
 116
 117
 118
 119
 120
 121
 122
 123
 124
 125
 126
 127
 128
 129
 130
 131
 132
 133
 134
 135
 136
 137
 138
 139
 140
 141
 142
 143
 144
 145
 146
 147
 148
 149
 150
 151
 152
 153
 154
 155
 156
 157
 158
 159
 160
 161
 162
 163
 164
 165
 166
 167
 168
 169
 170
 171
 172
 173
 174
 175
 176
 177
 178
 179
 180
 181
 182
 183
 184
 185
 186
---
title: 'Adicionar uma página Sobre'
summary: 'Aprenda mais tags HTML e veja como criar um menu de navegação para ligar as páginas entre si.'
permalink: 'adicionar-uma-pagina-sobre/'
originalPath: /adding-an-about-page/
tags: chapter
layout: 'chapter.njk'
---

# Adicionar uma página Sobre

Pelo resto deste livro, a gente vai expandir a nossa página inicial pessoal e transformá-la num site completo, com várias páginas e um blog. O exemplo continua sendo a **Blake's Homepage**, e o conteúdo vai falar de mim. Você vai querer adaptar as coisas para o que quiser ver no seu próprio site.

Se você não quiser fazer uma página pessoal, tudo bem também! Os conceitos que a gente cobre valem para todo tipo de site. Então você pode acompanhar e adaptar do seu jeito.

Se quiser um gostinho do resultado, visite a [demonstração completa da Blake's Homepage](https://demo.htmlforpeople.com/).

Ela tem as seguintes páginas e recursos:

- Cabeçalho com navegação
- Um blog com três posts
- Página Sobre com uma foto
- Um currículo digital
- Uma página divertida com vídeos do YouTube embutidos

Eu vou incluir muitos exemplos de código nos próximos capítulos, mas você também pode ir ao site de demonstração e [ver o código-fonte](https://perma.cc/3WP3-R9XL) de qualquer página para consultar a qualquer momento.

## Páginas são só arquivos para os quais você cria um link

A gente vai criar uma página nova no site criando um arquivo novo. Crie `about.html` ao lado de `index.html`. Para digitar menos, copie todo o conteúdo de `index.html` e cole em `about.html`.

Agora, vamos limpar um pouco. Eu vou tirar o título “How to make a website” e o parágrafo com o link para o neal.fun. Esta página deve ser sobre mim. Falando nisso, eu também vou trocar a imagem por uma foto minha (se você não se sentir à vontade para usar uma foto sua, use qualquer imagem que quiser aqui).

Vou ampliar o conteúdo adicionando uns parágrafos. Este também é um ótimo lugar para colocar qualquer informação de contato que você quiser. Eu vou adicionar um link para a minha conta no Mastodon (com um emoji de elefante).

```html
<p>🐘 <a href="https://social.lol/@bw">Drop me a line on Mastodon</a></p>
```

Lembre-se: um link é uma tag `<a>`. O texto que você envolve com a tag vira clicável. Depois você informa o _atributo_ `href`, que é o destino do link — em geral, um URL.

{% aside 'Seletor de emoji' %}
Para abrir um seletor de emoji:

- No Windows, pressione a tecla Windows + ponto (`.`)
- No macOS, pressione `fn` + `e`.
{% endaside %}

Aqui está o meu código dentro da tag `<body>`.

```html
<header>
  <h1>About Blake</h1>
</header>

<main>
  <img src="images/blake.jpg" alt="Photograph of space with stars and stardust.">

  <p>
    My name is Blake. I enjoy making websites and teaching others to do the same. I started writing an HTML web book because I think everyone should have a personal website and I want to show that you don't have to be a computer science graduate to make one.
  </p>

  <p>
    I'm a side project enthusiast and have put various sites, apps, and (bad) games into the world. My hobbies include web-related nerdery, D&D and board games, and writing. I like to participate in National Novel Writing Month, the annual novel-writing challenge
  </p>

  <p>🐘 <a href="https://social.lol/@bw">Drop me a line on Mastodon</a></p>

  <h2>Favorite board games</h2>

  <ul>
    <li>Dungeons & Dragons</li>
    <li>Risk</li>
    <li>Pandemic</li>
  </ul>
</main>

<footer>
  <p>Made with ❤️ and ☕️ by Blake Watson.</p>
</footer>
```

E é assim que fica.

![Captura de tela da página “About Blake”. O cabeçalho mostra “About Blake.” Abaixo há uma foto do Blake (eu!) sorrindo na frente de um muro de tijolos. O texto apresenta o Blake, falando da paixão por fazer sites e ensinar outras pessoas, além dos hobbies com desenvolvimento web, D&D, jogos de tabuleiro e escrita. Há um link para falar com ele no Mastodon. Uma seção chamada “Favorite board games” lista “Dungeons & Dragons,” “Risk” e “Pandemic.” O rodapé da página diz “Made with ❤️ and ☕ by Blake Watson.”](/assets/img/adding-an-about-page-1.webp)

Surpresa, sou eu! Enfim, isto já parece uma página Sobre de verdade. Eu admito que está um pouco forçado. Sinta-se à vontade para escrever o quanto quiser aqui.

## Navegando entre as páginas

A gente já tem uma página Sobre, mas precisa de um jeito de ir de uma página à outra. A gente precisa de um menu de navegação, ou menu nav. Um menu nav é só uma lista de links. O Simple.css parece gostar do menu nav acima do cabeçalho, então eu vou colocar ali. Mas você também pode colocar abaixo, se quiser.

O HTML tem uma tag `<nav>` exatamente para isso. Vamos colocar dois links no nosso menu nav — um para a página inicial e um para a página Sobre.

```html
<header>
  <nav>
    <a href="index.html">Home</a>
    <a href="about.html" aria-current="page">About</a>
  </nav>

  <h1>About Blake</h1>
</header>
```

Como esta é, no momento, a página Sobre, eu adicionei um atributo especial ao link. ARIA significa Accessible Rich Internet Applications. A gente deixa o site mais acessível adicionando o atributo `aria-current="page"`. Isso faz um par de coisas por nós.

- Deixa a página mais acessível para tecnologias assistivas, como leitores de tela.
- O Simple.css estiliza o link de outro jeito, para ficar fácil ver em qual página a gente está.

![Captura de tela da parte de cima da página “About Blake”, com botões de navegação. A navegação inclui “Home” e “About,” com o botão “About” em destaque para indicar a página atual. O título “About Blake” aparece em negrito abaixo da barra de navegação.](/assets/img/adding-an-about-page-2.webp)

Vamos adicionar o mesmo menu nav na página inicial. Abra o `index.html` e coloque o menu como a gente fez na página Sobre. Como esta é a página inicial, a gente deve colocar o atributo `aria-current` no link Home.

```html
<header>
  <nav>
    <a href="index.html" aria-current="page">Home</a>
    <a href="about.html">About</a>
  </nav>

  <h1>Blake's Homepage</h1>
</header>
```

Abra no navegador e admire o seu site de várias páginas! Clique. Clique. Clique…

## Limpando a página inicial

Como agora a gente tem uma página Sobre, parte do conteúdo da página inicial ficou repetido. Um pouco disso já está na página Sobre. Eu vou tirar o texto de bio, o link do Neal.fun e a lista de jogos de tabuleiro. Vou manter a imagem do espaço e adicionar um parágrafo de boas-vindas. E já que estamos nisso, vou manter a lista “how to make a website”.

Falando da imagem do espaço, vamos deixá-la mais interessante. Eu quero dar uma legenda a esta imagem e um link para o lugar de onde eu a tirei. A gente pode marcar melhor uma imagem envolvendo-a numa tag `<figure>` e incluindo um `<figcaption>`.

```html
<figure>
  <img src="images/space.jpg" alt="Photograph of space with stars and stardust.">

  <figcaption>
    Space is cool. <a href="https://unsplash.com/photos/blue-and-purple-galaxy-digital-wallpaper-E0AHdsENmDg">Photo source</a>
  </figcaption>
</figure>
```

O meu conteúdo `<main>` na página inicial agora fica assim.

```html
<main>
  <figure>
    <img src="images/space.jpg" alt="Photograph of space with stars and stardust.">

    <figcaption>
      Space is cool. <a href="https://unsplash.com/photos/blue-and-purple-galaxy-digital-wallpaper-E0AHdsENmDg">Photo source</a>
    </figcaption>
  </figure>

  <p>
    Welcome to my website! Here you can find out more about me, read my very interesting and totally not contrived blog posts, and check out some of the fun hobbies I am into. It won't be long until you are wondering what sorcery I have used to create this mind-blowing, web-based experience. The answer is HTML.
  </p>

  <h2>How to make a website</h2>

  <ol>
    <li>Create an HTML file</li>
    <li>Write some HTML in it</li>
    <li>Open it with your web browser</li>
  </ol>

  <p class="notice">
    <strong>Quer aprender a fazer um site como este?</strong><br> Confira o livro-web gratuito <a href="/">HTML e Pessoas</a>. Foi feito para todo mundo e ensina a criar uma página de um jeito amigável e acessível.
  </p>
</main>
```

O que é este `class="notice"`? Você pode aprender mais sobre classes nos capítulos bônus de CSS no fim deste livro. Mas, em resumo, isso ativa alguns estilos que o Simple.css oferece para fazer uma caixinha com um pouco de texto.

![Captura de tela da “Blake's Homepage” reorganizada. O cabeçalho inclui botões de navegação para “Home” (em destaque) e “About.” Abaixo há uma imagem grande e colorida de um céu estrelado. O texto de introdução dá as boas-vindas, fala de posts de blog e hobbies, com um tom brincalhão sobre a simplicidade de usar HTML. Uma seção chamada “How to make a website” lista três passos: “Create an HTML file,” “Write some HTML in it” e “Open it with your web browser.” Uma caixa em destaque convida as visitas a conferir o tutorial “HTML for People.”](/assets/img/adding-an-about-page-3.webp)

## Atualize o site no ar

Se você quiser. Também está tudo bem continuar trabalhando no computador. Muitos sites são feitos assim — a pessoa trabalha no site no próprio computador até terminar e só então publica. Mas tem bastante gente que também constrói o site em público, atualizando o site no ar conforme avança.

Se quiser atualizar, volte ao painel do Neocities e envie tanto o `index.html` quanto o `about.html`, já que esses arquivos mudaram. Se você adicionou alguma imagem, precisa entrar na pasta de imagens no Neocities e enviá-las lá (ou pode arrastar a pasta `images` para a área de soltar arquivos, o que substitui a pasta inteira e o conteúdo).

## A seguir

A gente transformou a nossa _página_ num _site_! A seguir, vamos adicionar um blog e explorar várias tags HTML.