Tin học 12 – Bài 7. HTML và cấu trúc trang web

Mục tiêu bài học

  • Kiến thức:
    • Hiểu khái niệm và chức năng của HTML.
    • Nắm được cấu trúc cơ bản của một trang web.
    • Phân biệt khái niệm thẻ HTML và phần tử HTML.
    • Biết các phần mềm phổ biến dùng để soạn thảo HTML.
  • Năng lực:
    • Hiểu và giải thích được cấu trúc của một trang web dưới dạng HTML.
  • Phẩm chất:
    • Hình thành ý thức trách nhiệm, tính cẩn thận khi làm việc nhóm, phẩm chất làm việc chăm chỉ, chuyên cần để hoàn thành một nhiệm vụ.

Hoạt động khởi động

Các trang web thực chất có cấu trúc như thế nào?

Các trang web có cấu trúc được xác định bởi các quy tắc của ngôn ngữ HTML. Cấu trúc này bao gồm các phần tử (elements) được lồng vào nhau, tạo thành một cây cấu trúc có thứ bậc, trong đó có phần đầu <head> chứa thông tin mô tả và phần thân <body> chứa nội dung hiển thị.

Có thể “lập trình” để tạo ra được các trang web hay không? Nếu lập trình được thì “mã nguồn” của trang web là gì?

Có, chúng ta có thể “lập trình” hay chính xác hơn là “viết mã” để tạo ra trang web bằng Ngôn ngữ Đánh dấu Siêu văn bản (HTML). “Mã nguồn” của trang web chính là tệp văn bản chứa các mã HTML này. Trình duyệt web sẽ đọc mã nguồn và hiển thị trang web theo đúng cấu trúc đã được định nghĩa.

Các trang web có quan hệ như thế nào với ngôn ngữ HTML?

HTML là ngôn ngữ nền tảng để tạo ra các trang web. Mọi trang web bạn thấy đều được xây dựng từ HTML. HTML cung cấp “bộ khung” cho trang web, xác định các thành phần như tiêu đề, đoạn văn, hình ảnh, liên kết và cách chúng được sắp xếp.

Trang web và trình duyệt web có quan hệ như thế nào?

Trang web là tệp tin chứa mã HTML. Trình duyệt web (như Chrome, Cốc Cốc, Firefox) là phần mềm có chức năng đọc, thông dịch tệp HTML đó và hiển thị nội dung một cách trực quan cho người dùng. Trình duyệt biến những dòng mã nguồn thành trang web có hình ảnh, văn bản, màu sắc mà chúng ta thấy.


1. Trang web và HTML

Mỗi trang web chúng ta xem trên trình duyệt thực chất được tạo ra từ một tệp văn bản có phần mở rộng là .html hoặc .htm. Tệp này được gọi là trang nguồn (hay mã nguồn) và chứa nội dung được viết bằng ngôn ngữ HTML.

HTML (Hypertext Markup Language – Ngôn ngữ đánh dấu siêu văn bản) là một bộ quy tắc dùng để thiết lập cấu trúc và hiển thị nội dung của trang web.

Tin học 12 Bài 7 Trang web và HTML

a. Thẻ đánh dấu HTML

Thẻ HTML là thành phần cốt lõi của ngôn ngữ HTML, được viết trong cặp dấu <>. Mỗi thẻ có một tên riêng và quy định cách nội dung được định dạng.

  • Thẻ đôi: Gồm thẻ mở <tên thẻ> và thẻ đóng </tên thẻ>. Thẻ đóng có thêm dấu gạch chéo /. Chúng xác định phạm vi tác dụng lên nội dung nằm giữa chúng.
  • Thẻ đơn: Chỉ có thẻ mở, thường có dạng <tên thẻ> hoặc <tên thẻ/>.
    Ví dụ: <hr/> để tạo một đường kẻ ngang, <br/> để ngắt dòng.

Ví dụ về một số thẻ thông dụng:

ThẻÝ nghĩa thẻVí dụ HTML code
pĐoạn văn bản<p>Đây là đoạn văn bản.</p>
h1Tiêu đề cấp 1<h1>Đây là tiêu đề 1.</h1>

Lưu ý quan trọng:

  • Tên thẻ HTML không phân biệt chữ hoa hay chữ thường, nhưng viết chữ thường là một quy ước chung.
  • Các thẻ có thể lồng vào nhau.
    Ví dụ: <p>Đây là chữ <i>nghiêng</i>.</p>
  • Mỗi thẻ có thể đi kèm các thuộc tính để cung cấp thông tin bổ sung.
    Ví dụ: <p style="color:red">Đoạn văn này màu đỏ.</p>
Thẻ HTML có phân biệt chữ hoa, chữ thường không?

Tên thẻ HTML không phân biệt chữ hoa, chữ thường, nhưng mặc định tên thẻ được viết chữ thường.

HTML và trình duyệt web xử lý dấu cách và xuống dòng như thế nào?

HTML và trình duyệt không nhận biết được nhiều dấu cách (chỉ hiểu là một dấu cách duy nhất).
Trình duyệt cũng không nhận biết dấu xuống dòng khi người dùng nhấn phím Enter trong quá trình soạn thảo.


b. Phần tử HTML

Phần tử HTML là khái niệm bao quát hơn, nó bao gồm thẻ mở, nội dung bên trong và thẻ đóng.

Vị trí bắt đầu (thẻ mở) + Nội dung + Vị trí kết thúc (thẻ đóng) = Phần tử HTML

Tin học 12 Bài 7 Phần tử HTML

Ví dụ: <p>Đây là một đoạn văn bản.</p> là một phần tử p.

Một tệp HTML là một tập hợp của nhiều phần tử HTML lồng vào nhau hoặc nối tiếp nhau để tạo nên cấu trúc hoàn chỉnh của trang web.


Câu hỏi củng cố:

Tệp văn bản trong Hình 7.1 có bao nhiêu phần tử HTML?

Tệp văn bản trong Hình 7.1 SGK có 9 phần tử HTML.

Nêu sự giống và khác nhau giữa thẻ HTML và phần tử HTML.
Giống nhau Khác nhau Đều là các khái niệm cơ bản liên quan đến trang web. Đều là các thành phần cơ bản của các trang web. Đều có tác dụng định dạng nội dung văn bản của trang web. **Thẻ HTML** là các từ khoá đặc biệt đóng vai trò cốt lõi của ngôn ngữ HTML, dùng để xác định một định dạng cụ thể. **Phần tử HTML** bao gồm cả thẻ HTML và nội dung văn bản chịu tác động của thẻ này, đóng vai trò các đơn vị định dạng của toàn bộ trang web.


2. Cấu trúc cơ bản của một tệp HTML

Tệp HTML luôn có một cấu trúc chung, có thể hình dung như một cái cây với các cành nhánh lồng vào nhau. Cấu trúc này đảm bảo trình duyệt có thể hiểu và hiển thị trang web một cách chính xác.

Ví dụ:

Tin học 12 Bài 7 Phần tử HTML

Một tệp HTML chuẩn bao gồm các thành phần sau:

  1. Khai báo <!DOCTYPE html>: Luôn là dòng đầu tiên, giúp trình duyệt nhận biết đây là một tài liệu HTML.
  2. Phần tử <html>: Là phần tử gốc (root) của cây, bao bọc toàn bộ nội dung trang web.
  3. Phần tử <head>: Chứa các thông tin mô tả về trang web nhưng không hiển thị trực tiếp, ví dụ như:
    • <title>: Tiêu đề của trang web, hiển thị trên tab của trình duyệt.
    • <meta charset="utf-8">: Khai báo bộ mã ký tự cho trang web, giúp hiển thị tiếng Việt đúng.
  4. Phần tử <body>: Chứa toàn bộ nội dung sẽ được hiển thị trên trang web, như văn bản, hình ảnh, liên kết…

Cấu trúc lồng nhau của các phần tử HTML tạo ra một quan hệ cha – con.
Ví dụ: <head> và <body> là con của <html>. Cấu trúc này được gọi là cây thông tin HTML.

Tin học 12 Bài 7 Phần tử HTML

3. Phần mềm soạn thảo HTML

a. Phần mềm soạn thảo văn bản đơn giản

  • Notepad (trên Windows) hoặc TextEdit (trên MacOS).
  • Đây là các công cụ có sẵn, đơn giản, nhưng KHÔNG có các tính năng hỗ trợ chuyên dụng cho việc viết mã.

b. Phần mềm soạn thảo chuyên nghiệp (Editor)

Phần mềm Notepad++

Có thể dễ dàng tải về và cài đặt trên máy tính chạy hệ điều hành Windows. Hỗ trợ soạn thảo nhiều ngôn ngữ khác nhau, trong đó có HTML, CSS…

Để hiển thị hỗ trợ soạn thảo cần thực hiện lệnh Language / H / HTML

Tin học 12 - Bài 7

Phần mềm Sublime Text

Thực hiện lệnh View / Syntax / HTML để Sublime Text hỗ trợ soạn thảo ngôn ngữ HTML

Tin học 12 - Bài 7

c. Các trang web soạn thảo HTML trực tuyến

Các trang như w3schools.comtutorialspoint.comcodepen.io cho phép viết mã và xem ngay kết quả hiển thị trên trình duyệt mà không cần cài đặt phần mềm

Đặc biệt tại đây OTTH.vn có phát triển một công cụ hỗ trợ soạn thảo HTML Code web by OTTH https://otth.vn/codeweb/

Tin học 12 Bài 7 Sử dụng trang web hỗ trợ soạn thảo trực tuyến

Nếu chưa có tài khoản, có thể bấm vào “Sử dụng không cần đăng nhập”.

Tin học 12 Bài 7 Sử dụng trang web hỗ trợ soạn thảo trực tuyến

Câu hỏi củng cố kiến thức

Xếp các tên sau vào hai nhóm: phần mềm soạn thảo HTML và trình duyệt web: Notepad, Opera, Sublime Text, Chrome, Cốc Cốc, Notepad++, FireFox, Microsoft Edge.

Phần mềm soạn thảo HTML:
a) Notepad
c) Sublime Text
f) Notepad++

Trình duyệt web:
b) Opera
d) Chrome
e) Cốc Cốc
g) Firefox
h) Microsoft Edge

Em có nhận xét gì về sự khác biệt khi soạn thảo HTML giữa các phần mềm chuyên nghiệp (ví dụ Notepad++, Sublime Text) và phần mềm soạn thảo văn bản thông thường (ví dụ Notepad)?

Phần mềm chuyên nghiệp (Notepad++, Sublime Text):
– Hỗ trợ cú pháp: Có tính năng tô màu cú pháp (syntax highlighting), giúp dễ dàng phân biệt các thành phần HTML, CSS, JavaScript.
– Tự động hoàn thành: Gợi ý và tự động hoàn thành mã giúp tiết kiệm thời gian.
– Hỗ trợ các tính năng nâng cao: Cho phép tìm kiếm, thay thế nâng cao, quản lý nhiều file cùng lúc, tích hợp với các công cụ lập trình khác.

Phần mềm soạn thảo văn bản thông thường (Notepad):
– Không hỗ trợ cú pháp: Chỉ hiển thị văn bản thuần, không có tính năng tô màu hoặc gợi ý cú pháp.
– Không tự động hoàn thành: Người dùng phải nhập toàn bộ mã thủ công.
– Tính năng hạn chế: Chỉ phù hợp để tạo các file HTML đơn giản hoặc chỉnh sửa nhanh chóng.

Tóm lại: Các phần mềm chuyên nghiệp hỗ trợ nhiều tính năng giúp lập trình hiệu quả hơn, đặc biệt với các dự án lớn.

Tin học 12 - Bài 7

Câu hỏi luyện tập

Câu 1. Tìm ví dụ về phần tử HTML không thể lồng, tức là không thể có quan hệ cha-con trong cây thông tin của trang web.

– Các thẻ như h1, h2, p, b, i, u, em… không thể lồng vào nhau

Câu 2. Chọn một văn bản đơn giản. Soạn thảo tệp HTML để hiển thị nội dung văn bản đó. Vẽ cây thông tin các phần tử HTML của trang web vừa soạn thảo.

– HS tự thực hiện, sử dụng trình viết code online có chuẩn bị sẵn cấu trúc cơ bản của một tệp HTML: https://otth.vn/codeweb/view_shared.php?id=11


Bài tập vận dụng

Câu 1. Hãy tìm trên mạng một số trang web hỗ trợ soạn thảo HTML trực tuyến

Một số trang soạn thảo HTML trực tuyến:
– https://www.w3schools.com/tryit/tryit.asp?filename=tryhtml_hello
– https://onlinehtmleditor.dev
– https://htmlcodeeditor.com

Câu 2. Sử dụng phần mềm soạn thảo HTML và soạn thảo trang web có nội dung như Hình 7.7.

– Tham khảo code mẫu tại đây: https://otth.vn/codeweb/view_shared.php?id=12


Câu hỏi trắc nghiệm dạng D1 và D2 Tin học 12 Bài 7: HTML và cấu trúc trang web

Thời gian làm bài: 30 phút
Chỉ hiển thị đáp án đúng khi chọn đúng
Câu hỏi sẽ được hiển thị ngẫu nhiên
Vui lòng nhập họ và tên để bắt đầu làm bài

NB

Phương án nào sau đây chỉ ra đúng cụm từ viết tắt của từ HTML?

NB

Ngôn ngữ HTML có chức năng chính là gì?

NB

Trong cấu trúc của một tệp HTML, phần tử nào chứa toàn bộ nội dung sẽ được hiển thị trên trang web?

TH

Trong cấu trúc cây của một tài liệu HTML, phần tử nào được coi là phần tử gốc (root)?

TH

Phần tử <head> trong một tệp HTML thường được sử dụng với mục đích chính là gì?

NB

Các thẻ HTML (HTML tag) được viết bên trong cặp kí tự nào?

TH

Một phần tử HTML (HTML element) hoàn chỉnh thông thường được cấu thành bởi những thành phần nào?

VD

Cho đoạn mã: <div><h1>Tiêu đề</h1><p>Nội dung.</p></div>. Đoạn mã này có tổng cộng bao nhiêu phần tử HTML?

NB

Phần mềm nào sau đây là một công cụ soạn thảo HTML chuyên nghiệp có tính năng tô màu cú pháp?

TH

Điểm khác biệt cơ bản giữa việc soạn thảo HTML bằng Notepad so với các công cụ soạn thảo trực tuyến là gì?

TH

Mối quan hệ lồng nhau giữa các phần tử nào sau đây là KHÔNG hợp lệ về mặt cấu trúc?

VD

Khi viết mã HTML, nếu người dùng nhấn phím Enter để xuống dòng nhiều lần trong trình soạn thảo, trình duyệt web sẽ hiển thị kết quả như thế nào?

An đang bắt đầu học HTML và muốn tạo một trang web cá nhân đơn giản bằng phần mềm Notepad. Bạn ấy gõ vào một dòng tiêu đề "Chào mừng đến với trang của An" và một đoạn văn giới thiệu bản thân. Dưới đây là một số nhận định về tình huống trên:

NB An phải lưu tệp của mình với phần mở rộng là .html hoặc .htm để trình duyệt có thể đọc được.

TH Để đặt tiêu đề "Chào mừng..." hiển thị trên tab của trình duyệt, An cần đặt văn bản đó vào giữa cặp thẻ <h1> và </h1>.

TH Phần tử chứa đoạn văn giới thiệu bản thân của An phải nằm bên trong phần tử <body>.

VD Nếu An dùng Notepad++ thay vì Notepad, bạn ấy có thể thấy các thẻ như <body>, <p> được tự động tô màu khác với văn bản thường.

Một nhóm học sinh đang xây dựng trang web cho dự án của lớp. Bạn Minh tạo ra cấu trúc file ban đầu, bạn Lan sẽ thêm nội dung chi tiết vào sau. Cấu trúc ban đầu của Minh có đầy đủ các thẻ <html>, <head>, <title>, <body>. Dưới đây là một số nhận định về tình huống trên:

NB Phần tử gốc của toàn bộ trang web mà nhóm đang xây dựng là <body>.

TH Việc Minh xác định cấu trúc với <html>, <head>, <body> trước tiên là hợp lí vì nó tạo ra bộ khung cơ bản cho trang web.

TH Thẻ <title> mà Minh tạo ra phải nằm bên trong thẻ <head>.

VD Nếu Lan muốn thêm một tiêu đề và hai đoạn văn, tất cả các phần tử này đều phải được đặt lồng vào bên trong phần tử <body>.

Hùng viết một đoạn mã HTML nhưng không thấy hiển thị như ý muốn. Đoạn mã của Hùng như sau: <html><title>Trang của Hùng</title> <p>Chào thế giới!</p></html> Dưới đây là một số nhận định về tình huống trên:

NB Đoạn mã của Hùng có sử dụng thẻ <p> để định nghĩa một đoạn văn bản.

TH Lỗi hiển thị có thể là do Hùng đã quên cặp thẻ <head> để bao bọc thẻ <title>.

TH Phần tử <p> đang được đặt sai vị trí vì nó phải là con trực tiếp của phần tử <body>, không phải <html>.

VD Để sửa mã này cho đúng cấu trúc, Hùng cần tạo thẻ <body> và di chuyển phần tử <p> vào bên trong nó, đồng thời tạo thẻ <head> để bao bọc <title>.

Nga đang sử dụng một trang web soạn thảo HTML trực tuyến để làm bài tập. Giao diện của trang web này có một khung để cô ấy nhập mã và một khung bên cạnh để xem ngay kết quả hiển thị. Dưới đây là một số nhận định về tình huống trên:

NB Công cụ Nga đang dùng là một phần mềm soạn thảo HTML chuyên nghiệp cần cài đặt như Sublime Text.

TH Ưu điểm của công cụ này là Nga có thể thấy kết quả ngay lập tức mà không cần lưu tệp và mở riêng bằng trình duyệt.

TH Cả công cụ trực tuyến này và Notepad đều cho phép tạo ra một tệp nguồn HTML có nội dung giống hệt nhau.

VD Nếu Nga cố tình viết một thẻ không tồn tại như <chao ban> trong mã nguồn, trang web ở khung kết quả sẽ báo lỗi và không hiển thị bất cứ nội dung nào.

Bảng xếp hạng

Hạng Họ tên Điểm số Thời gian
1
ĐÔ LÊ NGUYÊN KHANG 12C Nghi ngờ 6 lần thi
10.00 / 10.00
23 giây
2
Trần Ngọc Châu 12B 3 lần thi
10.00 / 10.00
33 giây
3
Lương hoàng Long 12c 4 lần thi
10.00 / 10.00
40 giây
4
NGUYỄN QUỐC TUẤN 12C 8 lần thi
10.00 / 10.00
46 giây
5
Lương Phương Vy 12C 1 lần thi
10.00 / 10.00
48 giây
6
LƯƠNG HOÀNG LONG 12C 4 lần thi
10.00 / 10.00
1 phút 3 giây
7
@NGUYỄN QUỐC TUẤN 12C Nghi ngờ 1 lần thi
10.00 / 10.00
1 phút 19 giây
8
Nguyễn Quốc Tuấn 12C Nghi ngờ 8 lần thi
10.00 / 10.00
1 phút 23 giây
9
Tuyết như 12c gis 1 lần thi
10.00 / 10.00
1 phút 24 giây
10
ĐÔ LÊ NGUYÊN KHANG Nghi ngờ 1 lần thi
10.00 / 10.00
2 phút 40 giây
11
Nguyễn Trần Phương Nghi 12A 1 lần thi
9.75 / 10.00
47 giây
12
Phương Nghi 12A 2 lần thi
9.50 / 10.00
40 giây
13
Khánh Duy 12C2 1 lần thi
9.50 / 10.00
2 phút 3 giây
14
Trần Văn Thuạn 1 lần thi
9.25 / 10.00
7 phút 22 giây
15
khánh ly 12b 2 lần thi
8.00 / 10.00
7 phút 48 giây
16
Gia Hân 12C 1 lần thi
7.50 / 10.00
6 phút 9 giây
17
Nguyễn Thị Bích Tuyền 12B 1 lần thi
7.00 / 10.00
6 phút 8 giây
18
Huỳnh Gia Hân 12C 1 lần thi
6.50 / 10.00
7 phút 59 giây
19
Ii 1 lần thi
6.25 / 10.00
5 phút 8 giây
20
Anh Tuấn 1 lần thi
5.50 / 10.00
2 phút 38 giây
21
Bkhang 1 lần thi
5.00 / 10.00
2 phút 18 giây
22
test12c 1 lần thi
3.00 / 10.00
51 giây
23
toannnn 1 lần thi
2.25 / 10.00
2 phút 38 giây

Để lại một bình luận

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *