Bird
Raised Fist0
HTMLmarkup~20 mins

Nested elements in HTML - Practice Problems & Coding Challenges

Choose your learning style10 modes available
Challenge - 5 Problems
🎖️
Nested Elements Master
Get all challenges correct to earn this badge!
Test your skills under time pressure!
❓ rendering
intermediate
2:00remaining
What is the visual output of nested
and
elements?
Consider this HTML code snippet:
<section>
  <article>
    <h2>Title</h2>
    <p>Paragraph inside article.</p>
  </article>
  <p>Paragraph inside section but outside article.</p>
</section>

What will the browser display?
HTML
<section>
  <article>
    <h2>Title</h2>
    <p>Paragraph inside article.</p>
  </article>
  <p>Paragraph inside section but outside article.</p>
</section>
AA heading 'Title' followed by two paragraphs: 'Paragraph inside article.' and 'Paragraph inside section but outside article.'
BOnly one paragraph with text 'Paragraph inside section but outside article.' is shown, the article content is hidden.
CTwo headings 'Title' and 'Paragraph inside article.' are shown, but no paragraphs.
DOnly the heading 'Title' is shown, paragraphs are ignored.
Attempts:
2 left
💡 Hint
Remember that nested elements inside
and
are all displayed unless hidden by CSS or scripts.
❓ selector
intermediate
2:00remaining
Which CSS selector targets only paragraphs inside
elements nested in
?
Given this HTML structure:
<section>
  <article>
    <p>Text 1</p>
  </article>
  <p>Text 2</p>
</section>

Which CSS selector will style only the paragraph inside the
?
Asection p
Bsection > p
Carticle > p
Dsection article p
Attempts:
2 left
💡 Hint
Think about the full path from section to article to paragraph.
🧠 Conceptual
advanced
2:00remaining
What is the semantic meaning of nesting
Why would a developer nest a
ATo indicate that the navigation links are part of the page header, helping screen readers and SEO.
BTo hide the navigation from users but keep it in the code.
CTo apply default browser styles that only work when <nav> is inside <header>.
DTo make the navigation appear only on mobile devices automatically.
Attempts:
2 left
💡 Hint
Think about how HTML5 elements describe the page structure and help assistive technologies.
❓ layout
advanced
2:00remaining
How does nesting
elements affect CSS Flexbox layout?
Given this HTML:
<div class="container">
  <div class="box">Box 1</div>
  <div class="wrapper">
    <div class="box">Box 2</div>
  </div>
</div>

With CSS:
.container { display: flex; }

Which boxes will be arranged side by side by Flexbox?
HTML
<div class="container">
  <div class="box">Box 1</div>
  <div class="wrapper">
    <div class="box">Box 2</div>
  </div>
</div>
ABoth 'Box 1' and 'Box 2' are flex items arranged side by side directly.
BOnly 'Box 1' and the 'wrapper' div are flex items arranged side by side; 'Box 2' is inside 'wrapper' and not a flex item.
COnly 'Box 2' is arranged by Flexbox; 'Box 1' is ignored.
DNeither box is arranged by Flexbox because nested divs disable flex layout.
Attempts:
2 left
💡 Hint
Flexbox arranges direct children of the flex container only.
❓ accessibility
expert
3:00remaining
Which nested HTML structure best supports screen reader navigation?
Choose the HTML snippet that uses nested semantic elements correctly to help screen readers understand page sections and navigation.
A
&lt;nav&gt;
  &lt;header&gt;
    &lt;h1&gt;Main Menu&lt;/h1&gt;
  &lt;/header&gt;
  &lt;ul&gt;
    &lt;li&gt;&lt;a href="#home"&gt;Home&lt;/a&gt;&lt;/li&gt;
  &lt;/ul&gt;
&lt;/nav&gt;
&lt;article&gt;
  &lt;h2&gt;Introduction&lt;/h2&gt;
  &lt;p&gt;Welcome text.&lt;/p&gt;
&lt;/article&gt;
B
&lt;div&gt;
  &lt;nav&gt;
    &lt;ul&gt;
      &lt;li&gt;&lt;a href="#home"&gt;Home&lt;/a&gt;&lt;/li&gt;
    &lt;/ul&gt;
  &lt;/nav&gt;
  &lt;section&gt;
    &lt;h2&gt;Introduction&lt;/h2&gt;
    &lt;p&gt;Welcome text.&lt;/p&gt;
  &lt;/section&gt;
&lt;/div&gt;
C
&lt;header&gt;
  &lt;nav aria-label="Main navigation"&gt;
    &lt;ul&gt;
      &lt;li&gt;&lt;a href="#home"&gt;Home&lt;/a&gt;&lt;/li&gt;
    &lt;/ul&gt;
  &lt;/nav&gt;
&lt;/header&gt;
&lt;main&gt;
  &lt;section aria-labelledby="intro"&gt;
    &lt;h2 id="intro"&gt;Introduction&lt;/h2&gt;
    &lt;p&gt;Welcome text.&lt;/p&gt;
  &lt;/section&gt;
&lt;/main&gt;
D
&lt;header&gt;
  &lt;div&gt;
    &lt;ul&gt;
      &lt;li&gt;&lt;a href="#home"&gt;Home&lt;/a&gt;&lt;/li&gt;
    &lt;/ul&gt;
  &lt;/div&gt;
&lt;/header&gt;
&lt;section&gt;
  &lt;h2&gt;Introduction&lt;/h2&gt;
  &lt;p&gt;Welcome text.&lt;/p&gt;
&lt;/section&gt;
Attempts:
2 left
💡 Hint
Screen readers rely on semantic tags and ARIA labels to understand page structure.

Practice

(1/5)
1. What does it mean to have nested elements in HTML?
easy
A. Putting one HTML tag inside another tag
B. Writing HTML tags without closing them
C. Using only one HTML tag per page
D. Adding CSS styles inside HTML tags

Solution

  1. Step 1: Understand the meaning of nested elements

    Nested elements mean placing one HTML tag inside another to organize content.
  2. Step 2: Compare options with this meaning

    Only Putting one HTML tag inside another tag describes putting one tag inside another, which matches nested elements.
  3. Final Answer:

    Putting one HTML tag inside another tag -> Option A
  4. Quick Check:

    Nested elements = tags inside tags [OK]
Hint: Nested means inside another tag, like boxes inside boxes [OK]
Common Mistakes:
  • Confusing nesting with styling
  • Thinking nesting means missing closing tags
  • Assuming nesting means one tag per page
2. Which of the following is the correct way to nest elements in HTML?
easy
A.

Text

B.

Text

C.

Text

D. <div>

Text

Solution

  1. Step 1: Check tag order and closing

    Correct nesting means tags open and close in order: parent opens, child opens, child closes, parent closes.
  2. Step 2: Validate each option

    Text

    follows correct order: <div> <p> Text </p> </div>. Others have mismatched or missing closing tags.
  3. Final Answer:

    <div><p>Text</p></div> -> Option B
  4. Quick Check:

    Tags must close in reverse order of opening [OK]
Hint: Tags must close in reverse order they open [OK]
Common Mistakes:
  • Closing parent before child
  • Swapping tag order
  • Forgetting closing tags
3. What will the browser display for this HTML code?
<div>Hello <strong>World</strong>!</div>
medium
A. Hello World! (with 'World' bolded)
B. Hello World!
C. Hello World! (all normal text)
D. Error: tags not closed

Solution

  1. Step 1: Identify nested tags and their effect

    The <strong> tag inside <div> makes the word 'World' bold.
  2. Step 2: Understand browser rendering

    Browser shows 'Hello ' normal, 'World' bold, and '!' normal, all inside a block.
  3. Final Answer:

    Hello World! (with 'World' bolded) -> Option A
  4. Quick Check:

    <strong> makes text bold inside parent [OK]
Hint: Tags inside text change style of that part only [OK]
Common Mistakes:
  • Thinking tags show as text
  • Ignoring effect of <strong>
  • Assuming error due to nesting
4. Find the error in this nested HTML snippet:
<ul>
  <li>Item 1
  <li>Item 2</li>
</ul>
medium
A. Extra closing tag for <ul>
B. Using <li> outside <ul>
C. Incorrect nesting of <ul> inside <li>
D. Missing closing tag for first <li>

Solution

  1. Step 1: Check each list item tag

    The first <li> tag has no closing </li> before the second <li> starts.
  2. Step 2: Confirm proper list structure

    Each <li> must be closed inside <ul>. Missing closing tag causes invalid HTML.
  3. Final Answer:

    Missing closing tag for first <li> -> Option D
  4. Quick Check:

    Every <li> needs a matching </li> [OK]
Hint: Close each list item before starting next [OK]
Common Mistakes:
  • Assuming <li> auto-closes
  • Confusing <ul> and <li> roles
  • Ignoring missing closing tags
5. You want to create a navigation menu with nested submenus using HTML. Which structure correctly nests a submenu inside a main menu item?
hard
A.
B.
C.
D.

Solution

  1. Step 1: Understand submenu nesting

    A submenu is a <ul> inside a <li> of the main menu to group related items.
  2. Step 2: Check each option's structure

    nests <ul> with 'Team' and 'History' inside the 'About' <li>, which is correct. Others break nesting rules or place <ul> outside <li>.
  3. Final Answer:

    <nav><ul><li>Home</li><li>About<ul><li>Team</li><li>History</li></ul></li><li>Contact</li></ul></nav> -> Option C
  4. Quick Check:

    Submenu <ul> inside <li> = correct nesting [OK]
Hint: Put submenu <ul> inside main menu <li> [OK]
Common Mistakes:
  • Placing submenu <ul> outside <li>
  • Not closing <li> before submenu
  • Mixing order of <ul> and <li>
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard