Files
freeCodeCamp/curriculum/challenges/english/01-responsive-web-design/basic-html-cat-photo-app/part-016.md
Oliver Eyton-Williams ee1e8abd87 feat(curriculum): restore seed + solution to Chinese (#40683)
* feat(tools): add seed/solution restore script

* chore(curriculum): remove empty sections' markers

* chore(curriculum): add seed + solution to Chinese

* chore: remove old formatter

* fix: update getChallenges

parse translated challenges separately, without reference to the source

* chore(curriculum): add dashedName to English

* chore(curriculum): add dashedName to Chinese

* refactor: remove unused challenge property 'name'

* fix: relax dashedName requirement

* fix: stray tag

Remove stray `pre` tag from challenge file.

Signed-off-by: nhcarrigan <nhcarrigan@gmail.com>

Co-authored-by: nhcarrigan <nhcarrigan@gmail.com>
2021-01-12 19:31:00 -07:00

82 lines
1.9 KiB
Markdown

---
id: 5f07c98cdb9413cbd4b16750
title: Part 16
challengeType: 0
dashedName: part-16
---
# --description--
It is time to add a new section. Add a second `section` element below the existing `section` element.
# --hints--
Your `section` element should have an opening tag. Opening tags have this syntax: `<elementName>`.
```js
assert(document.querySelectorAll('section').length >= 2);
```
You should only add one opening `section` tag. Please remove any extras.
```js
assert(document.querySelectorAll('section').length === 2);
```
Your `section` element should have a closing tag. Closing tags have a `/` just after the `<` character.
```js
assert(code.match(/<\/section>/g).length >= 2);
```
You should only add one closing `section` tag. Please remove any extras.
```js
assert(code.match(/<\/section>/g).length === 2);
```
The second `section` element should not be nested in the first `section` element.
```js
const childrenOf1stSection = [
...document.querySelector('main > section').children
];
const foundElems = childrenOf1stSection.filter((child) => {
return child.nodeName === 'SECTION';
});
assert(foundElems.length === 0);
```
Both `section` elements should be between the opening and closing tags of the `main` element.
```js
const childrenOfMain = [...document.querySelector('main').children];
const foundElems = childrenOfMain.filter((child) => {
return child.nodeName === 'SECTION';
});
assert(foundElems.length === 2);
```
# --seed--
## --seed-contents--
```html
<html>
<body>
<h1>CatPhotoApp</h1>
<main>
--fcc-editable-region--
<section>
<h2>Cat Photos</h2>
<!-- TODO: Add link to cat photos -->
<p>Click here to view more <a target="_blank" href="https://freecatphotoapp.com">cat photos</a>.</p>
<a href="https://freecatphotoapp.com"><img src="https://bit.ly/fcc-relaxing-cat" alt="A cute orange cat lying on its back."></a>
</section>
--fcc-editable-region--
</main>
</body>
</html>
```