Hướng Dẫn Cơ Bản Về HTML: Kiến Thức Và Thực Hành (Viện CNTT&TT – ĐHBKHN)


Tổng quan về giáo trình

Tài liệu học thuật "Cơ bản về HTML: Kiến thức và thực hành" do Viện Công nghệ Thông tin và Truyền thông (Viện CNTT&TT) – Đại học Bách khoa Hà Nội (ĐHBKHN) biên soạn, đóng vai trò là học liệu cơ sở trong học phần Thiết kế Web. Trong cấu trúc khung chương trình đào tạo kỹ sư và cử nhân ngành Công nghệ Thông tin, học phần này thường được bố trí ở học kỳ 5, học song hành cùng các học phần chuyên môn như Chuyên đề 1 và Lập trình Java.

Về mục tiêu học tập (learning outcomes), tài liệu trang bị cho sinh viên hệ thống kiến thức nền tảng bao gồm:

  • Cơ chế vận hành tổng quát của trang thông tin điện tử (Web page).
  • Cấu trúc phân tầng chuẩn mực của một tài liệu siêu văn bản.
  • Nguyên lý sử dụng các phần mềm, công cụ hỗ trợ xây dựng trang web.
  • Cú pháp và cách thức hiện thực hóa hệ thống thẻ HTML nhằm thiết kế, tổ chức bố cục giao diện web hoàn chỉnh.

Giáo trình lựa chọn phương pháp tiếp cận trực quan, đi từ lịch sử hình thành, chuẩn hóa của ngôn ngữ đánh dấu đến việc mổ xẻ cấu trúc cây tài liệu và chi tiết hóa từng nhóm thẻ chức năng. Cấu trúc bài giảng chia tách rõ ràng giữa phần lý thuyết cú pháp và các đoạn mã nguồn mẫu minh họa. Điểm đặc thù của tài liệu là tính chuẩn hóa học thuật cao, bám sát các tiêu chuẩn ban hành bởi Tổ chức Web Toàn cầu (W3C), giúp sinh viên nắm bắt bản chất của việc phân tích cú pháp (parsing) mà trình duyệt thực hiện đối với mã nguồn HTML.


Nội dung kiến thức cốt lõi

Các chương và chủ đề chính

Nội dung bài giảng được cấu trúc thành 5 chủ đề cốt lõi, phát triển tuần tự theo chuỗi logic từ cơ bản đến phức tạp:

1. Tổng quan về ngôn ngữ HTML

  • Khái niệm và lịch sử: Giới thiệu thuật ngữ HyperText Markup Language (Ngôn ngữ đánh dấu siêu văn bản), được sáng chế bởi Tim Berners-Lee và được W3C (World Wide Web Consortium) đưa thành chuẩn vào năm 1994.
  • Đặc tính kỹ thuật: HTML sử dụng hệ thống các thẻ (tags) để định dạng dữ liệu; ngôn ngữ không phân biệt chữ hoa và chữ thường. Trình duyệt web khi thông dịch HTML thường không đưa ra thông báo lỗi cú pháp mà hiển thị sai lệch giao diện so với dự định nếu mã nguồn bị sai.
  • Cú pháp thẻ và thuộc tính: Cấu trúc định danh <tên_thẻ> Dữ liệu </tên_thẻ>. Tên thẻ bắt nguồn từ từ vựng tiếng Anh (như B từ Bold, I từ Italic). Thẻ có thể tồn tại ở dạng cặp thẻ mở/đóng hoặc thẻ rỗng (thẻ đơn không có thẻ đóng như <img>,
    , <hr>). Thẻ hỗ trợ các thuộc tính mở rộng theo cú pháp <tên_thẻ tên_TT1="giá_trị1" tên_TT2="giá_trị2">.
  • Công cụ và định dạng tệp: Trang HTML lưu trữ dưới định dạng phần mở rộng .html hoặc .htm. Có thể soạn thảo thông qua các trình soạn thảo văn bản thuần túy (Text Editors) như Notepad, Word hoặc các công cụ biên tập trực quan WYSIWYG (What You See Is What You Get) như Microsoft FrontPage, Macromedia Dreamweaver.
  • Tài liệu khởi đầu: Phân tích mã nguồn ví dụ đầu tiên Chao.htm để định hình khung mã nguồn cơ bản.

2. Cấu trúc tổng quát trang HTML

Mô tả cấu trúc cây phân cấp của một tệp tin HTML:

  • Thẻ bao bọc <HTML>...</HTML>: Khai báo phạm vi tài liệu HTML để trình duyệt nhận diện.
  • Phần đầu trang <HEAD>...</HEAD>: Chứa các thông tin mô tả siêu dữ liệu (metadata), tiêu đề trang web được khai báo trong cặp thẻ <TITLE>...</TITLE>.
  • Phần thân trang <BODY>...</BODY>: Chứa toàn bộ nội dung hiển thị trực quan trên giao diện trình duyệt như văn bản, hình ảnh, bảng dữ liệu, và siêu liên kết. Thẻ hỗ trợ thuộc tính nền như bgcolor (ví dụ bgcolor="lavender").

3. Các nhóm thẻ HTML thông dụng

  • Định dạng khối văn bản:
    • Thẻ phân đoạn <DIV>...</DIV> dùng gom cụm và định dạng khối thông qua thuộc tính canh lề align (center, right, left, justify).
    • Thẻ đoạn văn <P>...</P> với cơ chế tự động xuống hàng sau khi đóng thẻ.
    • Thẻ ngắt dòng
      (không có thẻ đóng).
    • Thẻ kẻ đường ngang <HR> với các thuộc tính: align, width (độ rộng theo tỷ lệ phần trăm hoặc pixel), size (độ dày đường kẻ), và noshade (loại bỏ hiệu ứng đổ bóng).
  • Định dạng ký tự và văn bản:
    • Thẻ <FONT>...</FONT> định nghĩa kiểu chữ qua thuộc tính face (Arial, Tahoma, Times New Roman), cỡ chữ qua size (thang giá trị từ 1 đến 7), và màu sắc qua color (hệ màu RGB định dạng #RRGGBB từ 00 đến FF hoặc tên màu chuẩn).
    • Tiêu đề phân cấp từ <H1> đến <H6> hỗ trợ phân định cấu trúc đề mục văn bản.
    • Các thẻ định dạng kiểu chữ: in đậm <B>, in nghiêng <I>, gạch chân <U>, gạch ngang <S>, phóng to kích thước tương đối <BIG>, thu nhỏ kích thước <SMALL>, chỉ số trên <SUP> (ứng dụng viết công thức như $Pi \times R^2$), chỉ số dưới <SUB> (ứng dụng viết công thức hóa học như $H_2O$).
  • Thẻ tạo danh sách:
    • Danh sách không thứ tự <UL>...</UL>: chứa các mục con <LI>, hỗ trợ thuộc tính type với 3 kiểu biểu tượng bullet gồm square (hình vuông), disc (hình cầu đặc), và circle (hình tròn rỗng).
    • Danh sách có thứ tự <OL>...</OL>: tự động đánh số thứ tự các mục con <LI>.
  • Thẻ tạo bảng dữ liệu (<TABLE>):
    • Nguyên lý cấu trúc bảng trong HTML: Bảng gồm tập hợp các dòng (<TR>), mỗi dòng chứa tập hợp các ô dữ liệu (<TD>) hoặc ô tiêu đề (<TH>). Dữ liệu chỉ được đặt bên trong các ô.
    • Ký tự thực thể rỗng: Sử dụng mã &nbsp; để tạo ô trống không có nội dung.
    • Hệ thống thuộc tính của bảng: border (độ dày viền), width/height (kích thước theo pixel hoặc tỷ lệ %), cellspacing (khoảng cách giữa hai ô liên tiếp), cellpadding (khoảng cách từ viền ô đến nội dung bên trong ô), bgcolor (màu nền), background (ảnh nền).
    • Kỹ thuật gộp ô và canh chỉnh: colspan (gộp nhiều cột lại với nhau), rowspan (gộp nhiều hàng lại với nhau), align (canh lề ngang: left, center, right), valign (canh lề dọc: top, middle, bottom).
  • Thẻ siêu liên kết (Hyperlink):
    • Cung cấp cơ chế điều hướng chuyển trang, tải tệp tin.
    • Phân loại liên kết: liên kết đến một vị trí khác trong cùng tài liệu, liên kết sang tài liệu HTML khác, hoặc liên kết đến một phần cụ thể của tài liệu khác.

4. Các thẻ tạo biểu mẫu (Form) & 5. Thẻ đặc biệt

  • Xây dựng cấu trúc thu thập thông tin người dùng gửi về máy chủ.
  • Các thẻ tạo khung chia màn hình (Frames), nhúng tệp tin đa phương tiện (Multimedia).

Bảng tổng hợp các nhóm thẻ HTML cốt lõi

Nhóm chức năng Tên thẻ HTML Thuộc tính chính Mục đích sử dụng
Khung tài liệu <HTML>, <HEAD>, <TITLE>, <BODY> bgcolor, background Thiết lập cấu trúc phân tầng chuẩn của tệp tin web
Khối văn bản <DIV>, <P>,
, <HR>
align, width, size, noshade Phân đoạn, xuống dòng và tạo đường phân cách trực quan
Ký tự & Tiêu đề <FONT>, <H1>–<H6>, <B>, <I>, <U>, <S>, <SUP>, <SUB> face, color, size, align Định dạng phông chữ, màu sắc, đề mục và công thức
Danh sách <UL>, <OL>, <LI> type (disc, circle, square) Tổ chức dữ liệu dạng danh mục có hoặc không có thứ tự
Bảng biểu <TABLE>, <TR>, <TH>, <TD> border, cellpadding, cellspacing, colspan, rowspan, align, valign Trình bày dữ liệu dạng lưới ma trận hàng - cột
Điều hướng Thẻ liên kết (Hyperlink) Các thuộc tính địa chỉ đích Tạo liên kết nội bộ trang và liên kết liên tài nguyên

Kiến thức nền tảng và Kỹ năng phát triển

Kiến thức nền tảng

  • Mô hình tài liệu cây: Hiểu rõ cơ chế lồng ghép thẻ, phân định ranh giới giữa phần đầu khai báo (<HEAD>) và phần thân hiển thị (<BODY>).
  • Hệ thống đơn vị và hệ màu web: Làm chủ hệ màu thập lục phân (HEX) theo chuẩn RGB (#RRGGBB) và hệ thống đơn vị đo lường tương đối (%) kết hợp tuyệt đối (pixel).
  • Cơ chế xử lý của User Agent: Hiểu nguyên lý thông dịch linh hoạt (fault tolerance) của trình duyệt khi gặp lỗi cú pháp HTML.

Kỹ năng phát triển

  • Kỹ năng kỹ thuật: Viết mã HTML hợp chuẩn cú pháp W3C, kiểm soát vị trí mở/đóng thẻ và tổ chức thứ tự các thuộc tính mở rộng.
  • Kỹ năng phân tích cấu trúc: Phân tích một bản phác thảo giao diện tĩnh thành sơ đồ cây HTML, chuyển hóa cấu trúc bố cục dạng lưới phức tạp thành bảng có sử dụng rowspan và colspan.
  • Kỹ năng thực hành: Xây dựng hoàn chỉnh trang web tĩnh có tích hợp văn bản, danh sách đa cấp, bảng dữ liệu nâng cao và siêu liên kết điều hướng.

Phương pháp giảng dạy và học tập

Giáo trình triển khai phương pháp sư phạm tích hợp lý thuyết gắn liền với kiểm chứng thực nghiệm mã nguồn (Code-Demonstration). Quá trình giảng dạy và tiếp thu được tổ chức theo quy trình 4 bước:

[Giới thiệu Thẻ & Cú pháp] ➔ [Phân tích Thuộc tính Kỹ thuật] ➔ [Thực thi Mã nguồn Mẫu] ➔ [Kiểm chứng trên Trình duyệt]

Hệ thống bài tập và thực hành thực tế

Tài liệu cung cấp hệ thống các ví dụ thực hành bám sát cấu trúc từng bài học:

  1. Bài tập cấu trúc cơ bản: Tạo lập trang web đầu tiên Chao.htm với thẻ <HTML>, <HEAD>, <TITLE>, <BODY> để kiểm tra khả năng nhận diện tệp của trình duyệt.
  2. Bài tập định dạng ký tự: Xây dựng khối văn bản chứa đoạn giới thiệu môn học Thiết kế Web có canh đều hai lề (align="justify"), sử dụng phông chữ Times New Roman, kích cỡ 4, màu đỏ (color="red"), kết hợp các ký hiệu toán học $Pi \times R^2$ và công thức hóa học $H_2O$.
  3. Bài tập danh sách: Tổ chức danh sách học phần học kỳ 5 (Chuyên đề 1, Thiết kế Web, Lập trình Java) bằng danh sách có thứ tự <OL> và danh sách không thứ tự <UL> với các giá trị type khác nhau.
  4. Bài tập thiết kế bảng nâng cao: Xây dựng bảng ma trận dữ liệu yêu cầu kết hợp:
    • Kích thước width="400", height="200", border="1", bgcolor="#CCCCCC".
    • Thiết lập cellspacing="10", cellpadding="40".
    • Gộp các ô dòng 1 với rowspan="2" và colspan="3".
    • Căn lề đa hướng bằng align="center" kết hợp valign="top" và valign="middle".

Phương pháp đánh giá và hướng dẫn tự học

  • Tiêu chí đánh giá: Tính đúng đắn của cấu trúc phân cấp thẻ; tính tương thích về mặt hiển thị của các thuộc tính căn lề, màu sắc và độ dày viền; độ chính xác trong việc tính toán số lượng hàng/cột khi thực hiện gộp ô bảng.
  • Quy trình tự học: Sinh viên sử dụng trình soạn thảo văn bản thuần (Notepad) để rèn luyện độ chính xác cú pháp gõ tay; sau đó làm quen với các công cụ WYSIWYG (Dreamweaver, FrontPage) để hiểu cách công cụ tự động sinh mã nguồn. Thực hiện thay đổi tuần tự từng giá trị thuộc tính để quan sát trực tiếp sự biến đổi của giao diện trên trình duyệt.

Bối cảnh kỹ thuật và tính chuẩn hóa

  • Tiêu chuẩn học thuật W3C: Bài giảng bám sát tiêu chuẩn ngôn ngữ do Tổ chức W3C xác lập từ năm 1994, bảo đảm việc truyền thụ các quy tắc nền tảng nhất của cấu trúc web.
  • Song hành hai phương pháp phát triển: Giới thiệu đầy đủ cả hai hướng tiếp cận trong phát triển giao diện web thời kỳ đầu: can thiệp mã nguồn cấp thấp (Code-level editing) và thiết kế giao diện đồ họa tự sinh mã (Visual WYSIWYG editing).
  • Khả năng ứng dụng thực tế: Toàn bộ các cấu trúc được hướng dẫn (định dạng văn bản, danh sách phân cấp, bảng ma trận nhiều chiều, liên kết nội bộ/liên kết ngoài) giải quyết trực tiếp bài toán trình bày văn bản khoa học, bảng biểu thống kê dữ liệu và kết nối tài nguyên thông tin trên mạng Internet.

Đối tượng sử dụng giáo trình

  • Sinh viên chuyên ngành: Phục vụ trực tiếp sinh viên năm thứ 3 (học kỳ 5) thuộc các ngành Công nghệ Thông tin, Kỹ thuật Phần mềm, Hệ thống Thông tin của Viện CNTT&TT – ĐHBKHN theo học học phần Thiết kế Web.
  • Yêu cầu tiên quyết (Prerequisites): Người học cần có kiến thức cơ bản về tin học đại cương, kỹ năng quản lý tệp tin và thư mục trên hệ điều hành, và kỹ năng thao tác cơ bản với trình duyệt web.
  • Giảng viên: Sử dụng tài liệu làm khung đề cương bài giảng lý thuyết trên lớp, chuẩn hóa hệ thống slide thuyết trình và xây dựng ngân hàng bài tập thực hành phòng máy tính.
  • Người tự học và tham khảo: Phù hợp cho lập trình viên mới bắt đầu tiếp cận công nghệ web cần tài liệu tra cứu hệ thống thẻ, bảng mã màu và cấu trúc thuộc tính bảng biểu cơ bản.

Câu hỏi thường gặp (FAQ)

1. Giáo trình này phù hợp với đối tượng nào?

Tài liệu được biên soạn phục vụ sinh viên khối ngành CNTT bắt đầu học môn Thiết kế Web, đồng thời là tài liệu học tập cho người có nhu cầu tìm hiểu các nguyên lý đánh dấu siêu văn bản cơ bản.

2. Cần chuẩn bị kiến thức nền tảng nào trước khi học?

Người học chỉ cần nắm vững kỹ năng sử dụng máy tính cơ bản, thao tác lưu tệp với đuôi định dạng .html/.htm và cách sử dụng trình duyệt web để xem kết quả mã nguồn.

3. Cấu trúc bảng trong HTML được quy định như thế nào?

Theo tài liệu, HTML quy định một bảng (<TABLE>) gồm nhiều dòng (<TR>), một dòng gồm nhiều ô (<TD> hoặc <TH>), và chỉ có ô mới chứa dữ liệu trực tiếp. Để tạo ô rỗng không có dữ liệu, cần chèn mã thực thể &nbsp;.

4. Tại sao trình duyệt không báo lỗi cú pháp khi viết sai thẻ HTML?

HTML là ngôn ngữ đánh dấu được thông dịch bởi trình duyệt theo cơ chế thích ứng. Khi gặp lỗi sai cú pháp (như viết sai tên thẻ hoặc thiếu thẻ đóng), trình duyệt sẽ cố gắng tiếp tục hiển thị nội dung, dẫn đến việc giao diện có thể hiển thị sai lệch so với dự định của người lập trình thay vì ngắt chương trình và thông báo lỗi.

5. Tài liệu giới thiệu những công cụ soạn thảo HTML nào?

Giáo trình phân loại hai nhóm công cụ chính: trình soạn thảo văn bản thuần túy như Notepad, Word và các phần mềm thiết kế giao diện trực quan WYSIWYG như Microsoft FrontPage, Macromedia Dreamweaver.


Kết luận

Giáo trình bài giảng "Cơ bản về HTML: Kiến thức và thực hành" của Viện CNTT&TT – ĐHBKHN cung cấp một hệ thống kiến thức hoàn chỉnh về ngôn ngữ đánh dấu siêu văn bản, từ cấu trúc thẻ phân tầng, định dạng văn bản, danh sách đến kỹ thuật xây dựng bảng biểu ma trận và siêu liên kết.

Lộ trình học tập đề xuất là hoàn thành vững chắc các kỹ thuật xây dựng trang tĩnh cơ bản trước khi mở rộng sang các nội dung chuyên sâu hơn như thiết kế biểu mẫu (Form), xử lý đa phương tiện và tổ chức khung trang (Frame). Tài liệu là nền tảng học thuật quan trọng trong chuỗi môn học phát triển phần mềm và công nghệ web của chương trình đào tạo đại học.