WebDev Training Notes
WebDev Training Notes
Training Program
Professional Trainer Notes & Study Material
Table of Contents
3. HTML5 Fundamentals
➤ 3.1 HTML Document Structure
➤ 3.2 Semantic HTML5 Elements
➤ 3.3 Forms & Input Types
➤ 3.4 Media Elements
➤ 3.5 Accessibility (a11y)
➤ 3.6 HTML5 APIs Overview
➤ 3.7 Practice Questions & Interview Notes
© 2024 Training Material — Confidential & For Trainer Use Only Page 2
■ Web Development Training — Professional Trainer Notes Introduction to Web Dev | Git/GitHub | HTML5
■ TRAINER NOTE
Estimated Time: 90 Minutes | Teaching Style: Conceptual + Live Demo
Open Browser DevTools during this session. Ask students: 'What happens when you type a URL?'
Key Concepts:
• URL (Uniform Resource Locator): The address used to access a resource on the web. Composed of:
protocol://domain:port/path?query#fragment
• DNS (Domain Name System): Translates human-readable domain names into IP addresses. Think of it as the
internet's phone book.
• HTTP/HTTPS: HyperText Transfer Protocol — the communication protocol. HTTPS adds TLS encryption for
security.
• IP Address: A numerical label assigned to each device (e.g., [Link] for IPv4).
• Port: A communication endpoint. HTTP defaults to 80, HTTPS to 443.
© 2024 Training Material — Confidential & For Trainer Use Only Page 3
■ Web Development Training — Professional Trainer Notes Introduction to Web Dev | Git/GitHub | HTML5
The web operates on a client-server model. The client (usually a web browser) sends requests, and the server
responds with the requested resources.
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
■ CLIENT (Browser) SERVER ■
■ ■■■■■■■■■■■■■■■■■ ■■■■■■■■■■■■■■■■■■■■■■■■■■ ■
■ Chrome / Firefox Apache / Nginx / [Link] ■
■ Safari / Edge Express / Django / Rails ■
■ ■
■ Request ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■> ■
■ GET /[Link] HTTP/1.1 ■
■ ■
■ <■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ ■
■ Response 200 OK + HTML / JSON / CSS / JS ■
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
GET Retrieve data from the server Fetching a webpage, API data
400 Bad Request Client sent malformed request 4xx — Client Error
500 Internal Server Error Server crashed or misconfigured 5xx — Server Error
© 2024 Training Material — Confidential & For Trainer Use Only Page 4
■ Web Development Training — Professional Trainer Notes Introduction to Web Dev | Git/GitHub | HTML5
Analogy: HTML = Skeleton | CSS = Skin & Clothes | JS = Muscles & Brain
Frontend HTML, CSS, JavaScript, React, Vue, Angular User interfaces, visual design
Backend [Link], Python, PHP, Java, Ruby, Go Business logic, databases, APIs
Full Stack Dev Both Frontend + Backend ■6–25 LPA Very High
© 2024 Training Material — Confidential & For Trainer Use Only Page 5
■ Web Development Training — Professional Trainer Notes Introduction to Web Dev | Git/GitHub | HTML5
Q1. What happens step-by-step when you type '[Link] and press Enter?
■ DNS lookup → TCP handshake → TLS/SSL handshake → HTTP GET request → Server response → Browser
renders HTML
Q3. Name and explain the three core technologies of web development.
■ HTML (structure/content), CSS (presentation/styling), JavaScript (behaviour/interactivity)
Q4. What does a 404 status code mean? What about 500?
■ 404 = Resource Not Found (client error). 500 = Internal Server Error (server-side problem)
© 2024 Training Material — Confidential & For Trainer Use Only Page 6
■ Web Development Training — Professional Trainer Notes Introduction to Web Dev | Git/GitHub | HTML5
■ TRAINER NOTE
Estimated Time: 2 Hours | Teaching Style: Hands-On Terminal Practice
Give students a Git cheat sheet. Do a live demo: init → commit → push → pull request.
Git vs GitHub:
• Git: A free, open-source distributed version control tool installed on your local machine.
• GitHub: A cloud-based hosting service for Git repositories. Also provides collaboration tools like Pull Requests,
Issues, Actions, etc.
• Alternatives to GitHub: GitLab, Bitbucket, Azure DevOps
© 2024 Training Material — Confidential & For Trainer Use Only Page 7
■ Web Development Training — Professional Trainer Notes Introduction to Web Dev | Git/GitHub | HTML5
Bash / Terminal
# Ubuntu/Debian:
sudo apt update && sudo apt install git
# Verify configuration
git config --list
[Edit [Link]] ■■■ git add [Link] ■■> [Staged] ■■■ git commit ■■> [Committed]
© 2024 Training Material — Confidential & For Trainer Use Only Page 8
■ Web Development Training — Professional Trainer Notes Introduction to Web Dev | Git/GitHub | HTML5
# ■■ REPOSITORY SETUP ■■
git init # Initialize a new Git repo in current folder
git clone <url> # Clone a remote repository locally
git clone <url> my-folder # Clone into specific folder name
# ■■ VIEWING HISTORY ■■
git log # Full commit history
git log --oneline # Compact one-line per commit
git log --oneline --graph # Visual branch graph
git log -5 # Last 5 commits only
git show <commit-hash> # Show details of a specific commit
git diff # Unstaged changes
git diff --staged # Staged changes
# ■■ UNDOING CHANGES ■■
git restore [Link] # Discard working dir changes (new syntax)
git restore --staged file # Unstage a file (keep changes)
git revert <hash> # Create new commit that undoes a commit
git reset --soft HEAD~1 # Undo last commit, keep changes staged
git reset --mixed HEAD~1 # Undo last commit, keep changes unstaged
git reset --hard HEAD~1 # ■ Undo last commit AND discard changes
git stash # Temporarily save uncommitted changes
git stash pop # Restore stashed changes
© 2024 Training Material — Confidential & For Trainer Use Only Page 9
■ Web Development Training — Professional Trainer Notes Introduction to Web Dev | Git/GitHub | HTML5
# ■■ BRANCH OPERATIONS ■■
git branch # List all local branches
git branch -a # List all branches (local + remote)
git branch feature/login # Create a new branch
git checkout feature/login # Switch to branch (old syntax)
git switch feature/login # Switch to branch (new syntax)
git switch -c feature/signup # Create AND switch (shortcut)
git branch -d feature/login # Delete branch (safe — merged only)
git branch -D feature/login # Force delete branch
# ■■ MERGING ■■
git switch main
git merge feature/login # Merge feature into main
# ■■ REBASING (advanced) ■■
git rebase main # Reapply commits on top of main
git rebase -i HEAD~3 # Interactive rebase last 3 commits
© 2024 Training Material — Confidential & For Trainer Use Only Page 10
■ Web Development Training — Professional Trainer Notes Introduction to Web Dev | Git/GitHub | HTML5
# ■■ REMOTE OPERATIONS ■■
git remote -v # View remote connections
git remote add origin <url> # Add a remote named 'origin'
git push origin main # Push local main to GitHub
git push -u origin main # Push + set upstream (first time)
git pull origin main # Fetch + merge from GitHub
git fetch origin # Download changes without merging
Hotfix branches come off main directly for emergency production fixes.
© 2024 Training Material — Confidential & For Trainer Use Only Page 11
■ Web Development Training — Professional Trainer Notes Introduction to Web Dev | Git/GitHub | HTML5
.gitignore
# Dependencies
node_modules/
vendor/
# Build output
dist/
build/
*.[Link]
# OS files
.DS_Store
[Link]
# IDE files
.vscode/
.idea/
*.swp
# Logs
*.log
logs/
Q2. You accidentally committed to main. How do you move it to a new branch?
■ git branch feature/fix, git reset --hard HEAD~1 (on main), git switch feature/fix
Q4. What is the difference between git reset and git revert?
■ reset rewrites history (dangerous on shared branches). revert creates a new undo-commit (safe for teams).
© 2024 Training Material — Confidential & For Trainer Use Only Page 12
■ Web Development Training — Professional Trainer Notes Introduction to Web Dev | Git/GitHub | HTML5
■ HEAD is a pointer to the current commit you're working on, usually pointing to the tip of the current branch.
© 2024 Training Material — Confidential & For Trainer Use Only Page 13
■ Web Development Training — Professional Trainer Notes Introduction to Web Dev | Git/GitHub | HTML5
HTML5 Fundamentals
03
Structure, Semantics, Forms, Media & Accessibility
■ TRAINER NOTE
Estimated Time: 2.5 Hours | Teaching Style: Code-Along in VS Code
Set up Live Server extension. Build a sample portfolio page step by step.
<!DOCTYPE html>
<html lang='en'>
<head>
<meta charset='UTF-8'>
<meta name='viewport' content='width=device-width, initial-scale=1.0'>
<meta name='description' content='Page description for SEO'>
<meta name='author' content='Your Name'>
<title>Page Title — Appears in Browser Tab</title>
<link rel='stylesheet' href='[Link]'>
<link rel='icon' href='[Link]' type='image/x-icon'>
</head>
<body>
</html>
© 2024 Training Material — Confidential & For Trainer Use Only Page 14
■ Web Development Training — Professional Trainer Notes Introduction to Web Dev | Git/GitHub | HTML5
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
■ <header> ■ Site logo, nav, hero
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
■ <nav> ■ Navigation links
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
■ <main> ■ <aside> ■
■ ■■■■■■■■■■■■■■■■■ ■ Sidebar widgets ■
■ ■ <article> ■ ■ Related posts ■
■ ■ Blog content ■ ■ Ads / widgets ■
■ ■■■■■■■■■■■■■■■■■ ■ ■
■ ■■■■■■■■■■■■■■■■■ ■ ■
■ ■ <section> ■ ■ ■
■ ■ More content ■ ■ ■
■ ■■■■■■■■■■■■■■■■■ ■ ■
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
■ <footer> ■ Copyright, links
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
© 2024 Training Material — Confidential & For Trainer Use Only Page 15
■ Web Development Training — Professional Trainer Notes Introduction to Web Dev | Git/GitHub | HTML5
<!DOCTYPE html>
<html lang='en'>
<head>
<meta charset='UTF-8'>
<title>Semantic Layout Example</title>
</head>
<body>
<header>
<nav>
<ul>
<li><a href='/'>Home</a></li>
<li><a href='/about'>About</a></li>
<li><a href='/contact'>Contact</a></li>
</ul>
</nav>
</header>
<main>
<article>
<header>
<h1>Article Title</h1>
<time datetime='2024-01-15'>January 15, 2024</time>
</header>
<section>
<h2>Introduction</h2>
<p>Article content goes here...</p>
</section>
<section>
<h2>Main Content</h2>
<figure>
<img src='[Link]' alt='Architecture diagram'>
<figcaption>Fig 1: System Architecture</figcaption>
</figure>
</section>
</article>
<aside>
<h3>Related Articles</h3>
<ul>
<li><a href='#'>Getting Started with CSS</a></li>
</ul>
</aside>
</main>
<footer>
<p>© 2024 My Website. All rights reserved.</p>
</footer>
</body>
</html>
© 2024 Training Material — Confidential & For Trainer Use Only Page 16
■ Web Development Training — Professional Trainer Notes Introduction to Web Dev | Git/GitHub | HTML5
© 2024 Training Material — Confidential & For Trainer Use Only Page 17
■ Web Development Training — Professional Trainer Notes Introduction to Web Dev | Git/GitHub | HTML5
<!-- HEADINGS (h1 only once per page for SEO) -->
<h1>Main Title</h1>
<h2>Section Heading</h2>
<h3>Sub-section</h3> <!-- h4, h5, h6 also available -->
© 2024 Training Material — Confidential & For Trainer Use Only Page 18
■ Web Development Training — Professional Trainer Notes Introduction to Web Dev | Git/GitHub | HTML5
HTML5 — Tables
<table>
<caption>Monthly Sales Report</caption>
<thead>
<tr>
<th scope='col'>Month</th>
<th scope='col'>Revenue</th>
<th scope='col'>Growth</th>
</tr>
</thead>
<tbody>
<tr>
<td>January</td>
<td>■1,20,000</td>
<td>+12%</td>
</tr>
<tr>
<td>February</td>
<td>■1,45,000</td>
<td>+20%</td>
</tr>
</tbody>
<tfoot>
<tr>
<td colspan='2'>Total</td>
<td>■2,65,000</td>
</tr>
</tfoot>
</table>
© 2024 Training Material — Confidential & For Trainer Use Only Page 19
■ Web Development Training — Professional Trainer Notes Introduction to Web Dev | Git/GitHub | HTML5
<label for='phone'>Phone</label>
<input type='tel' id='phone' name='phone' pattern='[0-9]{10}'>
<label for='age'>Age</label>
<input type='number' id='age' name='age' min='18' max='100'>
© 2024 Training Material — Confidential & For Trainer Use Only Page 20
■ Web Development Training — Professional Trainer Notes Introduction to Web Dev | Git/GitHub | HTML5
<fieldset>
<legend>Preferences</legend>
© 2024 Training Material — Confidential & For Trainer Use Only Page 21
■ Web Development Training — Professional Trainer Notes Introduction to Web Dev | Git/GitHub | HTML5
© 2024 Training Material — Confidential & For Trainer Use Only Page 22
■ Web Development Training — Professional Trainer Notes Introduction to Web Dev | Git/GitHub | HTML5
© 2024 Training Material — Confidential & For Trainer Use Only Page 23
■ Web Development Training — Professional Trainer Notes Introduction to Web Dev | Git/GitHub | HTML5
<!-- ARIA (Accessible Rich Internet Applications) roles & attributes -->
Perceivable Content must be presentable in ways Alt text, captions, sufficient color
users can perceive. contrast (4.5:1 ratio)
© 2024 Training Material — Confidential & For Trainer Use Only Page 24
■ Web Development Training — Professional Trainer Notes Introduction to Web Dev | Git/GitHub | HTML5
Robust Content must be interpreted by assistive Valid HTML, ARIA roles, tested with
technologies. screen readers
Q3. What is the purpose of the 'name' attribute in form inputs vs the 'id' attribute?
■ name is used by the server to identify form data on submission. id is used by CSS/JS and to link via 'for' attribute.
© 2024 Training Material — Confidential & For Trainer Use Only Page 25
■ Web Development Training — Professional Trainer Notes Introduction to Web Dev | Git/GitHub | HTML5
Q1. Draw the complete lifecycle of a web request from URL entry to page display.
Q2. Create a comparison table of 5 HTTP status codes with real-world scenarios.
Q3. Research and write about the differences between HTTP/1.1, HTTP/2, and HTTP/3.
Q5. What browser developer tool would you use to: (a) find why a page loads slowly, (b) inspect a button's
CSS, (c) view API responses?
© 2024 Training Material — Confidential & For Trainer Use Only Page 26
■ Web Development Training — Professional Trainer Notes Introduction to Web Dev | Git/GitHub | HTML5
© 2024 Training Material — Confidential & For Trainer Use Only Page 27
■ Web Development Training — Professional Trainer Notes Introduction to Web Dev | Git/GitHub | HTML5
• GitHub — Entire project pushed to a public GitHub repository with meaningful commit messages
Submission Checklist:
Project Checklist
© 2024 Training Material — Confidential & For Trainer Use Only Page 28
■ Web Development Training — Professional Trainer Notes Introduction to Web Dev | Git/GitHub | HTML5
# BRANCHING # UNDOING
git switch -c feature/x git restore file # Discard
git switch main git reset --soft HEAD~1
git merge feature/x git revert <hash> # Safe undo
git branch -d feature/x git stash / pop
# REMOTE # INSPECTION
git remote add origin <url> git diff # Unstaged
git push -u origin main git diff --staged
git fetch origin git log -p -2
git pull --rebase git blame file
© 2024 Training Material — Confidential & For Trainer Use Only Page 29
■ Web Development Training — Professional Trainer Notes Introduction to Web Dev | Git/GitHub | HTML5
<!-- INPUT TYPES: text email password number tel url date time -->
<!-- range color file search checkbox radio hidden submit -->
<!-- KEY ATTRIBUTES: id class style href src alt title -->
<!-- data-* aria-* role tabindex autofocus disabled readonly -->
© 2024 Training Material — Confidential & For Trainer Use Only Page 30
■ Web Development Training — Professional Trainer Notes Introduction to Web Dev | Git/GitHub | HTML5
■ KEY TAKEAWAYS
Module 1: The web = HTTP requests between browsers and servers. Master DevTools.
Module 2: Git tracks every change. Commit early, commit often. Use branches always.
Module 3: HTML = structure. Use semantic elements. Forms with labels. Alt text always.
Next Steps: Learn CSS (Flexbox, Grid, Responsive Design) → Then JavaScript (DOM, Events, Fetch API)
© 2024 Training Material — Confidential & For Trainer Use Only Page 31