Back to Freecodecamp

Step 13

curriculum/challenges/english/blocks/workshop-blog-page/66a33a00514b40393a983c24.md

latest5.3 KB
Original Source

--description--

For the third blog post, you will need to add another article element.

Inside the article element, add an h3 element with the text of Mr. Whiskers' First Birthday Party.

Below your h3 element, add two paragraphs of lorem ipsum text.

--hints--

You should have a third article element within your section element with the id set to posts.

js
const articleElement = document.querySelector('#posts article:nth-of-type(3)');
assert.strictEqual(articleElement?.parentElement.tagName, 'SECTION');

You should have an h3 element inside the article element with the text of Mr. Whiskers' First Birthday Party.

js
const h3Element = document.querySelector('#posts article:nth-of-type(3) h3');
assert.strictEqual(h3Element?.innerText.trim(), "Mr. Whiskers' First Birthday Party");

Your h3 element should be within your article element.

js
const h3Element = document.querySelector('#posts article:nth-of-type(3) h3');
assert.strictEqual(h3Element?.parentElement.tagName, 'ARTICLE');

You should have two paragraph elements inside the article element.

js
const paragraphElements = document.querySelectorAll('#posts article:nth-of-type(2) p');
assert.strictEqual(paragraphElements.length, 2);

Your first paragraph element should have lorem ipsum text. Double check for spelling and punctuation errors.

js
const paragraphElement = document.querySelector('#posts article:nth-of-type(3) p:first-of-type');
const loremIpsum = `Lorem ipsum dolor sit amet consectetur adipisicing elit. Quisquam quod, voluptates, quae, quos quibusdam dolorum quia nemo repudiandae quidem voluptatum quas. Quisquam quod, voluptates, quae, quos quibusdam dolorum quia nemo repudiandae quidem voluptatum quas.`

assert.strictEqual(paragraphElement?.innerText.trim(), loremIpsum);

Your second paragraph element should have lorem ipsum text. Double check for spelling and punctuation errors.

js
const paragraphElement = document.querySelector('#posts article:nth-of-type(3) p:last-of-type');
const loremIpsum = `Lorem ipsum dolor sit amet consectetur adipisicing elit. Quisquam quod, voluptates, quae, quos quibusdam dolorum quia nemo repudiandae quidem voluptatum quas. Quisquam quod, voluptates, quae, quos quibusdam dolorum quia nemo repudiandae quidem voluptatum quas.`

assert.strictEqual(paragraphElement?.innerText.trim(), loremIpsum);

Your paragraphs should come after the h3 element.

js
let h3 = document.querySelectorAll('#posts article:nth-of-type(3) > p ~ h3');
assert.isEmpty(h3);
const paragraphs = document.querySelectorAll('#posts article:nth-of-type(3) > h3 ~ p');
assert.lengthOf(paragraphs, 2);

--seed--

--seed-contents--

html
<!DOCTYPE html>
<html lang="en">
  <head>
    <title>Mr. Whiskers' Blog</title>
    <meta charset="UTF-8" />
  </head>
  <body>
    <header>
      <h1>Welcome to Mr. Whiskers' Blog Page!</h1>
      <figure>
        
        <figcaption>Mr. Whiskers in the Garden</figcaption>
      </figure>
      <nav>
        <ul>
          <li><a href="#about">About</a></li>
          <li><a href="#posts">Posts</a></li>
          <li><a href="#contact">Contact</a></li>
        </ul>
      </nav>
    </header>
    <main>
      <section id="about">
        <h2>About</h2>
        <p>
          Hi there! I'm Jane Doe, a passionate writer who finds endless inspiration in the antics of my beloved cat, Mr. Whiskers.
        </p>
        <p>
          His playful nature and boundless energy keeps me on my toes. I love him so much.
        </p>
      </section>
      <section id="posts">
        <h2>Posts</h2>

        <article>
          <h3>Mr. Whiskers' First Day Home</h3>
          <p>
            Lorem ipsum dolor sit amet consectetur adipisicing elit. Quisquam
            quod, voluptates, quae, quos quibusdam dolorum quia nemo repudiandae
            quidem voluptatum quas. Quisquam quod, voluptates, quae, quos
            quibusdam dolorum quia nemo repudiandae quidem voluptatum quas.
          </p>
          <p>
            Lorem ipsum dolor sit amet consectetur adipisicing elit. Quisquam
            quod, voluptates, quae, quos quibusdam dolorum quia nemo repudiandae
            quidem voluptatum quas. Quisquam quod, voluptates, quae, quos
            quibusdam dolorum quia nemo repudiandae quidem voluptatum quas.
          </p>
        </article>
        <article>
          <h3>Mr. Whiskers' First Bath</h3>
          <p>
            Lorem ipsum dolor sit amet consectetur adipisicing elit. Quisquam
            quod, voluptates, quae, quos quibusdam dolorum quia nemo repudiandae
            quidem voluptatum quas. Quisquam quod, voluptates, quae, quos
            quibusdam dolorum quia nemo repudiandae quidem voluptatum quas.
          </p>
          <p>
            Lorem ipsum dolor sit amet consectetur adipisicing elit. Quisquam
            quod, voluptates, quae, quos quibusdam dolorum quia nemo repudiandae
            quidem voluptatum quas. Quisquam quod, voluptates, quae, quos
            quibusdam dolorum quia nemo repudiandae quidem voluptatum quas.
          </p>
        </article>
--fcc-editable-region--
        
--fcc-editable-region--
      </section>
    </main>
  </body>
</html>