80 lines
2.2 KiB
Markdown
80 lines
2.2 KiB
Markdown
|
---
|
||
|
id: 5dc24614f86c76b9248c6ebd
|
||
|
title: Passo 10
|
||
|
challengeType: 0
|
||
|
dashedName: step-10
|
||
|
---
|
||
|
|
||
|
# --description--
|
||
|
|
||
|
Você pode fazer uma ligação com outra página usando o elemento de âncora (`a`). Por exemplo, `<a href='https://freecodecamp.org'></a>` faria um link para `freecodecamp.org`.
|
||
|
|
||
|
Adicione um elemento de âncora após o parágrafo que faça um link para `https://freecatphotoapp.com`. Neste momento, o link não será exibido na pré-visualização.
|
||
|
|
||
|
# --hints--
|
||
|
|
||
|
O elemento de âncora (`a`) deve ter uma tag de abertura. As tags de abertura têm essa sintaxe: `<elementName>`.
|
||
|
|
||
|
```js
|
||
|
assert(document.querySelector('a'));
|
||
|
```
|
||
|
|
||
|
O elemento de âncora (`a`) deve ter uma tag de fechamento. As tags de fechamento têm um caractere `/` logo após o caractere `<`.
|
||
|
|
||
|
```js
|
||
|
assert(code.match(/<\/a\>/));
|
||
|
```
|
||
|
|
||
|
O elemento de âncora (`a`) deve estar abaixo do elemento `p`. Eles estão na ordem errada.
|
||
|
|
||
|
```js
|
||
|
const collection = [...document.querySelectorAll('a, p')].map(
|
||
|
(node) => node.nodeName
|
||
|
);
|
||
|
assert(collection.indexOf('P') < collection.indexOf('A'));
|
||
|
```
|
||
|
|
||
|
O elemento de âncora (`a`) não tem um atributo `href`. Verifique se há um espaço depois do nome da tag de abertura e/ou se há espaços antes de todos os nomes dos atributos.
|
||
|
|
||
|
```js
|
||
|
assert(document.querySelector('a').hasAttribute('href'));
|
||
|
```
|
||
|
|
||
|
O elemento de âncora (`a`) deve fazer um link para `https://freecatphotoapp.com`. Você omitiu o URL ou tem um erro de digitação.
|
||
|
|
||
|
```js
|
||
|
assert(
|
||
|
document.querySelector('a').getAttribute('href') ===
|
||
|
'https://freecatphotoapp.com'
|
||
|
);
|
||
|
```
|
||
|
|
||
|
Embora você tenha definido o atributo `href` do elemento de âncora ('a') com o link correto, é recomendável sempre cercar o valor de um atributo com aspas.
|
||
|
|
||
|
```js
|
||
|
assert(
|
||
|
!/\<a\s+href\s*=\s*https:\/\/www.freecodecamp.org\/cat-photos/.test(code)
|
||
|
);
|
||
|
```
|
||
|
|
||
|
# --seed--
|
||
|
|
||
|
## --seed-contents--
|
||
|
|
||
|
```html
|
||
|
<html>
|
||
|
<body>
|
||
|
<h1>CatPhotoApp</h1>
|
||
|
<main>
|
||
|
<h2>Cat Photos</h2>
|
||
|
<!-- TODO: Add link to cat photos -->
|
||
|
--fcc-editable-region--
|
||
|
<p>Click here to view more cat photos.</p>
|
||
|
--fcc-editable-region--
|
||
|
<img src="https://cdn.freecodecamp.org/curriculum/cat-photo-app/relaxing-cat.jpg" alt="A cute orange cat lying on its back.">
|
||
|
</main>
|
||
|
</body>
|
||
|
</html>
|
||
|
```
|
||
|
|