Building a Simple Profile Card with Nested Elements
📖 Scenario: You want to create a simple profile card on a webpage that shows a person's name, a short description, and a profile picture. To organize this information clearly, you will use nested HTML elements.
🎯 Goal: Build a profile card using nested HTML elements including a section as the container, a header for the name, a p for the description, and an img for the profile picture inside the section.
📋 What You'll Learn
Use a section element with the class profile-card as the main container.
Inside the section, add a header element containing the person's name.
Add a p element inside the section for the description text.
Include an img element inside the section for the profile picture with alt text for accessibility.
💡 Why This Matters
🌍 Real World
Profile cards are common on websites to show user or team member information in a clear, organized way.
💼 Career
Understanding how to nest HTML elements properly is essential for building accessible and well-structured web pages.
Progress0 / 4 steps
1
Create the main container section with class profile-card
Write a section element with the class attribute set to profile-card. This will be the main container for the profile card.
HTML
Hint
Use the section tag and add class="profile-card" inside the opening tag.
2
Add a header element with the name inside the section
Inside the section with class profile-card, add a header element containing the text Jane Doe.
HTML
Hint
Use the header tag inside the section and type the exact name Jane Doe inside it.
3
Add a p element with a description inside the section
Below the header inside the section, add a p element with the text Web developer and coffee lover.
HTML
Hint
Use the p tag inside the section and write the exact description text.
4
Add an img element for the profile picture inside the section
Inside the section with class profile-card, add an img element with src="profile.jpg" and alt="Profile picture of Jane Doe" attributes.
HTML
Hint
Use the img tag with the exact src and alt attributes inside the section.
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
Step 1: Understand the meaning of nested elements
Nested elements mean placing one HTML tag inside another to organize content.
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.
Final Answer:
Putting one HTML tag inside another tag -> Option A
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
Step 1: Check tag order and closing
Correct nesting means tags open and close in order: parent opens, child opens, child closes, parent closes.
Step 2: Validate each option
Text
follows correct order: <div> <p> Text </p> </div>. Others have mismatched or missing closing tags.
Final Answer:
<div><p>Text</p></div> -> Option B
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
Step 1: Identify nested tags and their effect
The <strong> tag inside <div> makes the word 'World' bold.
Step 2: Understand browser rendering
Browser shows 'Hello ' normal, 'World' bold, and '!' normal, all inside a block.
Final Answer:
Hello World! (with 'World' bolded) -> Option A
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
Step 1: Check each list item tag
The first <li> tag has no closing </li> before the second <li> starts.
Step 2: Confirm proper list structure
Each <li> must be closed inside <ul>. Missing closing tag causes invalid HTML.
Final Answer:
Missing closing tag for first <li> -> Option D
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
Step 1: Understand submenu nesting
A submenu is a <ul> inside a <li> of the main menu to group related items.
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>.
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
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 unknownstrongwhile earning +1 Grip toward your certificate.