* 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>
122 lines
3.7 KiB
Markdown
122 lines
3.7 KiB
Markdown
---
|
||
id: bad87fee1348bd9aede08835
|
||
title: 元素嵌套
|
||
challengeType: 0
|
||
videoUrl: 'https://scrimba.com/p/pVMPUv/cNW4kC3'
|
||
forumTopicId: 18246
|
||
dashedName: nest-many-elements-within-a-single-div-element
|
||
---
|
||
|
||
# --description--
|
||
|
||
`div` 元素也叫 Content Division Element(内容划分元素)元素,是一个包裹其他元素的通用容器。
|
||
|
||
它也是 HTML 中出现频率最高的元素。
|
||
|
||
和其他普通元素一样,你可以用 `<div>` 来标记一个 `div` 元素的开始,用 `</div>` 来标记一个 `div` 元素的结束。
|
||
|
||
# --instructions--
|
||
|
||
请把无序列表、有序列表和段落都嵌套进同一个 `div` 元素。
|
||
|
||
提示:你可以在第一个 `<p>` 之前插入 `div` 开始标记,在 `</ol>` 之后插入 `div` 结束标签。这样,所有的列表都会位于 `div` 之内。
|
||
|
||
# --hints--
|
||
|
||
所有的 `p` 元素都应嵌套在 `div` 元素中。
|
||
|
||
```js
|
||
assert($('div').children('p').length > 1);
|
||
```
|
||
|
||
所有的 `ul` 元素都应嵌套在 `div` 元素中。
|
||
|
||
```js
|
||
assert($('div').children('ul').length > 0);
|
||
```
|
||
|
||
所有的 `ol` 元素都应嵌套在 `div` 元素中。
|
||
|
||
```js
|
||
assert($('div').children('ol').length > 0);
|
||
```
|
||
|
||
`div` 元素应有结束标签。
|
||
|
||
```js
|
||
assert(
|
||
code.match(/<\/div>/g) &&
|
||
code.match(/<\/div>/g).length === code.match(/<div>/g).length
|
||
);
|
||
```
|
||
|
||
# --seed--
|
||
|
||
## --seed-contents--
|
||
|
||
```html
|
||
<h2>CatPhotoApp</h2>
|
||
<main>
|
||
<p>Click here to view more <a href="#">cat photos</a>.</p>
|
||
|
||
<a href="#"><img src="https://bit.ly/fcc-relaxing-cat" alt="A cute orange cat lying on its back."></a>
|
||
|
||
<p>Things cats love:</p>
|
||
<ul>
|
||
<li>cat nip</li>
|
||
<li>laser pointers</li>
|
||
<li>lasagna</li>
|
||
</ul>
|
||
<p>Top 3 things cats hate:</p>
|
||
<ol>
|
||
<li>flea treatment</li>
|
||
<li>thunder</li>
|
||
<li>other cats</li>
|
||
</ol>
|
||
|
||
<form action="https://freecatphotoapp.com/submit-cat-photo">
|
||
<label for="indoor"><input id="indoor" type="radio" name="indoor-outdoor" value="indoor" checked> Indoor</label>
|
||
<label for="outdoor"><input id="outdoor" type="radio" name="indoor-outdoor" value="outdoor"> Outdoor</label><br>
|
||
<label for="loving"><input id="loving" type="checkbox" name="personality" value="loving" checked> Loving</label>
|
||
<label for="lazy"><input id="lazy" type="checkbox" name="personality" value="lazy"> Lazy</label>
|
||
<label for="energetic"><input id="energetic" type="checkbox" name="personality" value="energetic"> Energetic</label><br>
|
||
<input type="text" placeholder="cat photo URL" required>
|
||
<button type="submit">Submit</button>
|
||
</form>
|
||
</main>
|
||
```
|
||
|
||
# --solutions--
|
||
|
||
```html
|
||
<h2>CatPhotoApp</h2>
|
||
<main>
|
||
<p>Click here to view more <a href="#">cat photos</a>.</p>
|
||
|
||
<a href="#"><img src="https://bit.ly/fcc-relaxing-cat" alt="A cute orange cat lying on its back."></a>
|
||
<div>
|
||
<p>Things cats love:</p>
|
||
<ul>
|
||
<li>cat nip</li>
|
||
<li>laser pointers</li>
|
||
<li>lasagna</li>
|
||
</ul>
|
||
<p>Top 3 things cats hate:</p>
|
||
<ol>
|
||
<li>flea treatment</li>
|
||
<li>thunder</li>
|
||
<li>other cats</li>
|
||
</ol>
|
||
</div>
|
||
<form action="https://freecatphotoapp.com/submit-cat-photo">
|
||
<label for="indoor"><input id="indoor" type="radio" name="indoor-outdoor" value="indoor" checked> Indoor</label>
|
||
<label for="outdoor"><input id="outdoor" type="radio" name="indoor-outdoor" value="outdoor"> Outdoor</label><br>
|
||
<label for="loving"><input id="loving" type="checkbox" name="personality" value="loving" checked> Loving</label>
|
||
<label for="lazy"><input id="lazy" type="checkbox" name="personality" value="lazy"> Lazy</label>
|
||
<label for="energetic"><input id="energetic" type="checkbox" name="personality" value="energetic"> Energetic</label><br>
|
||
<input type="text" placeholder="cat photo URL" required>
|
||
<button type="submit">Submit</button>
|
||
</form>
|
||
</main>
|
||
```
|