Lộ trình lớp web public hè 2026


Buổi 1: Giới thiệu cài đặt IDE và Extensions

Buổi 2: Cấu trúc HTML cơ bản & Semantic HTML

Buổi 3: Giới thiệu CSS & Cách style cơ bản

Buổi 4: Làm việc với Font, Biến, Bộ chọn & Kỹ thuật chia layout với Flexbox

Buổi 5: CSS Grid, Position, Animation, Transition

Buổi 6: Giới thiệu về JavaScript và cách sử dụng JavaScript

Buổi 7: DOM là gì? Lắng nghe sự kiện và thao tác DOM

Buổi 8: Ôn tập tổng hợp & Kiểm tra cuối khóa


HIT-WEB-PUBLIC-2026 - WEEK 2


Nội dung

I. Cấu trúc cơ bản của trang HTML

II. Các thẻ cơ bản trong HTML

1. Cấu tạo của thẻ trong HTML

2. Các thẻ cơ bản

III. Semantic HTML


I. Cấu trúc cơ bản của trang HTML

<!DOCTYPE html>
<html>
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Tiêu đề trang web</title>
  </head>

  <body>
    Phần thân đặt ở đây
  </body>
</html>

II. Các thẻ cơ bản trong HTML

1. Cấu tạo của thẻ trong HTML

tag-structure

2. Các thẻ cơ bản

Trước khi bắt đầu tìm hiểu các thẻ cơ bản, các bạn hãy thực hiện theo các bước sau đây để có thể mở thư mục HIT_WEB_PUBLIC trong VSCode

image

Nếu các bạn đã thêm được thư mục trên ,hãy tiếp tục thực hiện theo các bước dưới đây để tạo ra thư mục week-2 và file index.html đầu tiên:

Các bước ở trên là cách thêm 1 folder vào VS Code, cách tạo folder, tạo file trong VSCode. Lúc này hãy nhìn sang bên phải chính là phần editor của VSCode.

<!DOCTYPE html>
<html>
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Tiêu đề trang web</title>
  </head>

  <body>
    Hello world
  </body>
</html>

❗ Một chút lưu ý:

→ Như vậy, các bạn đã biết cách tạo 1 file .html và chạy Live Server để mở trang web của bạn. Chúng ta cùng tiếp tục tìm hiểu các thẻ cơ bản HTML, đi qua nội dung từng thẻ, hãy copy chúng và đặt vào trong <body>Đặt ở đây</body> để biết được kết quả hiển thị của nó sẽ như thế nào

2.1. Thẻ tiêu đề <h1>, <h2>, <h3>, <h4>, <h5>, <h6>
<h1>Heading 1</h1>
<h2>Heading 2</h2> 
<h3>Heading 3</h3>
<h4>Heading 4</h4>
<h5>Heading 5</h5>
<h6>Heading 6</h6>
2.2. Thẻ văn bản <p>
<p>This is a paragraph</p>
2.3. Thẻ liên kết
<a href="https://google.com">Google</a>

→ Hãy thử cả hai giá trị trên để biết được kết quả.

2.4. Thẻ ảnh
<img src="image.jpg" alt="Image" width="500" height="600" />
<img
  src="https://i.pinimg.com/originals/85/97/43/8597430660c7fec44b74cb3e695e7554.jpg"
  width="100"
  height="100"
/>

2.5. Thẻ danh sách
<ul>
  <li>Item 1</li>
  <li>Item 2</li>
  <li>Item 3</li>
</ul>
<ol>
  <li>Item 1</li>
  <li>Item 2</li>
  <li>Item 3</li>
</ol>

❗Chú ý:

2.6. Thẻ bảng
<table border="1">
  <tr>
    <th>Company</th>
    <th>Contact</th>
    <th>Country</th>
  </tr>
  <tr>
    <td>Alfreds Futterkiste</td>
    <td>Maria Anders</td>
    <td>Germany</td>
  </tr>
  <tr>
    <td>Centro comercial Moctezuma</td>
    <td>Francisco Chang</td>
    <td>Mexico</td>
  </tr>
</table>
<table border="1">
  <tr>
    <th colspan="2">Name</th>
    <th>Age</th>
  </tr>
  <tr>
    <td>Jill</td>
    <td>Smith</td>
    <td>43</td>
  </tr>
  <tr>
    <td>Eve</td>
    <td>Jackson</td>
    <td>57</td>
  </tr>
</table>
<table border="1">
  <tr>
    <th>Name</th>
    <td>Jill</td>
    <tr>
    </tr>
    <th rowspan="2">Phone</th>
    <td>555-1234</td>
  </tr>
  <tr>
    <td>555-8745</td>
  </tr>
</table>
2.7. Thẻ form
<form>
  <label for="fname">First name:</label><br />
  <input type="text" id="fname" name="fname" /><br />
  <label for="lname">Last name:</label><br />
  <input type="text" id="lname" name="lname" />
</form>
<form>
  <label for="username">Username:</label><br />
  <input type="text" id="username" name="username" /><br />
  <label for="pwd">Password:</label><br />
  <input type="password" id="pwd" name="pwd" />
</form>
<form>
  <input type="radio" id="html" name="fav_language" value="HTML" />
  <label for="html">HTML</label><br />
  <input type="radio" id="css" name="fav_language" value="CSS" />
  <label for="css">CSS</label><br />
  <input
    type="radio"
    id="javascript"
    name="fav_language"
    value="JavaScript"
  />
  <label for="javascript">JavaScript</label>
</form>
<form>
  <input type="checkbox" id="vehicle1" name="vehicle1" value="Bike" />
  <label for="vehicle1"> I have a bike</label><br />
  <input type="checkbox" id="vehicle2" name="vehicle2" value="Car" />
  <label for="vehicle2"> I have a car</label><br />
  <input type="checkbox" id="vehicle3" name="vehicle3" value="Boat" />
  <label for="vehicle3"> I have a boat</label>
</form>

...

<label for="cars">Choose a car:</label>
<select id="cars" name="cars">
  <option value="volvo">Volvo</option>
  <option value="saab">Saab</option>
  <option value="fiat">Fiat</option>
  <option value="audi">Audi</option>
</select>
<textarea name="message" rows="10" cols="30">
The cat was playing in the garden.
</textarea>
2.8. Thẻ button
<button type="button">Click Me!</button>
2.9. Thẻ khối
<div style="background-color: #FFF4A3">
  <h2>London</h2>
  <p>London is the capital city of England.</p>
  <p>London has over 13 million inhabitants.</p>
</div>

❗❗❗ Lưu ý:

III. Semantic HTML

image

🔍 Giải thích từng thẻ

<section>

<aside>

<article>


✅ Lợi ích của cách bố cục này:


<header>
  <h1>Welcome to My Blog</h1>
  <nav>
    <ul>
      <li><a href="#home">Home</a></li>
      <li><a href="#about">About</a></li>
      <li><a href="#contact">Contact</a></li>
    </ul>
  </nav>
</header>
<nav>
  <ul>
    <li><a href="#services">Our Services</a></li>
    <li><a href="#portfolio">Portfolio</a></li>
    <li><a href="#contact">Contact Us</a></li>
  </ul>
</nav>
<footer>
  <p>&copy; 2024 My Website. All Rights Reserved.</p>
  <nav>
    <a href="#privacy-policy">Privacy Policy</a> |
    <a href="#terms">Terms of Service</a>
  </nav>
</footer>

❗❗❗ Giải thích những thẻ trên có vẻ dài dòng và khó hiểu nhưng những thẻ này cũng không khác gì so với thẻ <div> được thêm thuộc tính id="header" hoặc class="header". Tuy nhiên với các thẻ ngữ nghĩa trên sẽ giúp đoạn HTML sẽ dễ đọc hơn và hiểu được nội dung bên trong nó là gì