| NenTang.vn |
Chương 5-Bài 1. CSS là gì? Cú pháp sử dụng CSS |
||
| Tác giả: Dương Nguyễn Phú Cường | Ngày đăng: 19/3/2026, 19:31 | Lượt xem: 932 |
1. Giới thiệu chi tiết: CSS là gì?Để hiểu rõ CSS (Cascading Style Sheets), hãy tưởng tượng một trang web giống như một ngôi nhà. Trong đó, HTML đóng vai trò là phần khung xương, gạch, vữa và các đường ống nước – nó định hình cấu trúc căn bản (đâu là phòng khách, đâu là cửa sổ). Còn CSS chính là lớp sơn, nội thất, ánh sáng và các chi tiết trang trí làm cho ngôi nhà trở nên đẹp đẽ, sang trọng và tiện nghi. Về mặt kỹ thuật, CSS là một ngôn ngữ định kiểu (Style Sheet Language) được thiết kế để tách biệt nội dung (HTML) ra khỏi giao diện hiển thị. Nhờ sự tách biệt này, bạn có thể thay đổi toàn bộ "bộ mặt" của hàng nghìn trang web chỉ bằng cách chỉnh sửa một file CSS duy nhất. Cơ chế hoạt động của CSSCSS hoạt động dựa trên nguyên tắc "Chọn và Áp dụng" (Select and Apply). Bạn chọn một phần tử HTML cụ thể, sau đó gán cho nó các quy tắc (rules) về hiển thị. Một quy tắc CSS cơ bản bao gồm hai phần chính:
Tại sao chúng ta bắt buộc phải dùng CSS?Trước khi CSS ra đời, các lập trình viên phải sử dụng các thẻ HTML như CSS giải quyết vấn đề này thông qua 3 đặc tính cốt lõi:
Ví dụ minh họa: HTML thuần vs. HTML kết hợp CSSHãy xem sự khác biệt giữa việc chỉ sử dụng HTML và khi có thêm CSS: Trạng thái Mô tả HTML thuần Nội dung chỉ là văn bản thô, font chữ mặc định, căn lề trái, màu đen đơn điệu. Trông giống như một văn bản Word chưa được trình bày. HTML + CSS Nội dung được phân chia bố cục đẹp mắt, font chữ hiện đại, màu sắc hài hòa, có hiệu ứng khi di chuột và tương thích hoàn hảo trên điện thoại.
CSS không chỉ là màu sắcNhiều người lầm tưởng CSS chỉ để chỉnh màu chữ hay font chữ. Thực tế, CSS hiện đại (CSS3) cực kỳ mạnh mẽ với khả năng:
Tóm lại, CSS là cầu nối giữa một trang web "chức năng" và một trang web "trải nghiệm". Hiểu vững CSS chính là bước đầu tiên để bạn trở thành một lập trình viên Front-end chuyên nghiệp. 2. Hình tượng hóa: CSS là chuyên gia trang điểm cho websiteĐể hiểu sâu sắc về CSS, hãy tưởng tượng việc xây dựng một trang web giống như việc xây dựng một ngôi nhà. Trong quá trình này, HTML đóng vai trò là "bộ khung xương" (phần thô), bao gồm gạch, vữa, cột và các bức tường. Tuy nhiên, nếu chỉ dừng lại ở HTML, ngôi nhà đó sẽ rất đơn điệu, thô kệch và thiếu sức sống. Đó chính là lúc CSS (Cascading Style Sheets) xuất hiện với tư cách là một "Chuyên gia trang điểm" – người chịu trách nhiệm thổi hồn vào bộ khung đó. ![]() CSS nói đơn giản là một Chuyên gia Trang điểm, giúp tô vẽ lên trang web của bạn các định dạng mong muốn.CSS thay đổi diện mạo như thế nào?Hãy hình dung một trang web chỉ có HTML giống như một người đi dự tiệc mà chỉ mặc đồ bảo hộ lao động. Mọi thứ đều có cấu trúc nhưng thiếu thẩm mỹ. CSS sẽ giúp "trang điểm" cho website thông qua các tác vụ sau:
Minh họa bằng code: Từ "Thô" đến "Đẹp"Để bạn dễ hình dung, hãy xem xét một đoạn mã HTML đơn giản đại diện cho một chiếc thẻ thông tin. Nếu không có CSS, nó chỉ là những dòng chữ đen trên nền trắng nhàm chán. Bây giờ, hãy để "Chuyên gia trang điểm" CSS vào cuộc. Bằng cách viết một vài dòng CSS, chúng ta có thể biến đổi hoàn toàn giao diện này: Tại sao gọi CSS là "Chuyên gia"?Sở dĩ gọi CSS là chuyên gia vì khả năng tái sử dụng và tính nhất quán cực cao. Thay vì phải đi "trang điểm" từng trang một cách thủ công, bạn chỉ cần tạo ra một file CSS duy nhất (giống như một cuốn cẩm nang phong cách). Khi bạn thay đổi một thông số trong file này, toàn bộ hàng nghìn trang web trong hệ thống của bạn sẽ thay đổi diện mạo ngay lập tức.
Bảng so sánh: Sự khác biệt khi có và không có CSSTiêu chí Chỉ có HTML (Bộ khung) Có thêm CSS (Chuyên gia trang điểm) Màu sắc Mặc định (Đen/Trắng) Tùy biến với hàng triệu mã màu Bố cục Xếp chồng từ trên xuống dưới Linh hoạt, chia cột, lưới (Grid/Flexbox) Trải nghiệm Khô khan, khó nhìn Thân thiện, thu hút, chuyên nghiệp Khả năng thay đổi Phải sửa từng tag Thay đổi đồng loạt qua 1 file duy nhất Tóm lại, nếu coi website là một tác phẩm nghệ thuật, thì HTML chính là tấm toan trắng với những nét vẽ phác thảo đầu tiên, còn CSS chính là bảng màu và cọ vẽ của người họa sĩ. Không có CSS, website vẫn hoạt động, nhưng nó sẽ thiếu đi sự chuyên nghiệp, khả năng truyền tải cảm xúc và trải nghiệm người dùng hiện đại mà bất kỳ trang web thành công nào cũng cần có. 3. Định nghĩa kỹ thuật về CSSVề mặt kỹ thuật, CSS (Cascading Style Sheets) là một ngôn ngữ quy tắc kiểu dáng (Style Sheet Language) được thiết kế để tách biệt nội dung của tài liệu (viết bằng HTML hoặc XML) khỏi cách trình bày của nó (bố cục, màu sắc, phông chữ). Sự "tách biệt" này là nguyên lý cốt lõi của phát triển web hiện đại, giúp mã nguồn trở nên tinh gọn và dễ bảo trì hơn. Cấu trúc cú pháp của một quy tắc CSS![]() Một tập tin CSS bao gồm nhiều quy tắc (rules). Mỗi quy tắc bao gồm hai phần chính: Bộ chọn (Selector) và Khối khai báo (Declaration Block).
Ví dụ thực tếGiả sử bạn có một đoạn văn bản trong HTML: Trong ví dụ trên, Cơ chế "Cascading" (Tầng) - Tại sao lại gọi là "Cascading"?Từ "Cascading" trong CSS có nghĩa là "phân tầng". Đây là một cơ chế quan trọng giúp trình duyệt quyết định quy tắc nào sẽ được áp dụng khi có nhiều quy tắc xung đột nhau trên cùng một phần tử. Thứ tự ưu tiên được xác định dựa trên:
Các cách nhúng CSS vào trang webCó 3 cách chính để áp dụng CSS vào tài liệu HTML, mỗi cách có mục đích sử dụng khác nhau: Cách nhúng Mô tả Trường hợp sử dụng Inline CSS Viết trực tiếp vào thuộc tính
Tại sao CSS lại quan trọng trong lập trình web?Nếu HTML là "bộ khung xương" (cung cấp cấu trúc thông tin), thì CSS chính là "lớp da thịt và trang phục" (cung cấp tính thẩm mỹ). Nếu không có CSS, mọi trang web sẽ trông giống như các văn bản Word cũ kỹ từ thập niên 90. CSS cho phép lập trình viên:
4. Tại sao cần có CSS? (Lịch sử hình thành và giải quyết vấn đề của HTML)Để hiểu rõ tầm quan trọng của CSS, chúng ta cần quay ngược thời gian trở lại những ngày đầu của World Wide Web. Khi HTML ra đời, mục đích duy nhất của nó là cấu trúc hóa văn bản (dùng để hiển thị các tiêu đề, đoạn văn và liên kết). Nó chưa bao giờ được thiết kế để trở thành một công cụ làm đẹp giao diện. Sự bế tắc của HTML thời kỳ sơ khaiVào những năm 90, khi nhu cầu về một trang web "đẹp mắt" tăng lên, các nhà phát triển bắt đầu "ép" HTML phải làm những việc mà nó không được thiết kế để thực hiện. Họ sử dụng các thẻ như
Ví dụ minh họa: Sự khác biệt giữa "Có CSS" và "Không có CSS"Hãy xem xét một đoạn code HTML cũ kỹ (trước khi có CSS) để định dạng một tiêu đề và một đoạn văn: Nếu bạn có 50 đoạn văn như trên, code của bạn sẽ trở nên cực kỳ rác và khó bảo trì. Khi CSS ra đời, nó tách biệt hoàn toàn phần nội dung (HTML) và phần trình bày (CSS). Bạn chỉ cần viết một lần trong file CSS và áp dụng cho toàn bộ trang web. CSS giải quyết vấn đề bằng cách nào?Sự ra đời của CSS (Cascading Style Sheets) bởi W3C vào năm 1996 đã thay đổi hoàn toàn cuộc chơi thông qua các cơ chế cốt lõi:
Bảng so sánh: Trước và sau khi có CSSĐặc điểm Thời kỳ HTML thuần (Trước 1996) Thời kỳ hiện đại (Có CSS) Bảo trì Cực kỳ khó khăn, sửa từng trang. Dễ dàng, sửa một file là xong. Dung lượng Code nặng, chứa nhiều thẻ định dạng dư thừa. Code nhẹ, tập trung vào nội dung. Khả năng tùy biến Hạn chế, phụ thuộc vào thẻ HTML. Vô hạn (Animation, Responsive, Grid, Flexbox). Trải nghiệm người dùng Giao diện đơn điệu, khó đọc. Giao diện chuyên nghiệp, phản hồi tốt. Tóm lại, CSS không chỉ là một công cụ làm đẹp; nó là giải pháp kiến trúc giúp web phát triển bền vững. Nếu không có CSS, việc xây dựng các ứng dụng web phức tạp như Facebook hay YouTube hiện nay là điều không tưởng, vì mỗi thay đổi nhỏ về giao diện sẽ tiêu tốn hàng nghìn giờ làm việc vô ích. 5. Giải thích chi tiết cơ chế hoạt động của CSSĐể hiểu rõ cách CSS "thổi hồn" vào một trang web, chúng ta cần đi sâu vào cơ chế vận hành của nó. CSS hoạt động dựa trên một nguyên tắc cốt lõi: Sự tách biệt giữa nội dung (HTML) và hình thức (CSS). Thay vì nhúng các thẻ định dạng trực tiếp vào nội dung, CSS sử dụng một hệ thống các quy tắc (rulesets) để chỉ định cách hiển thị cho từng thành phần cụ thể. Cấu trúc của một quy tắc CSS (CSS Ruleset)Một quy tắc CSS được tạo thành từ hai phần chính: Selector (Bộ chọn) và Declaration Block (Khối khai báo). Hãy hình dung nó giống như một câu mệnh lệnh: "Này Selector, hãy thay đổi thuộc tính X thành giá trị Y".
Ví dụ minh họa thực tếGiả sử bạn có một đoạn văn bản trong HTML: Khi trình duyệt đọc trang web, nó sẽ quét qua mã HTML, sau đó tìm kiếm các quy tắc CSS tương ứng. Khi thấy class là Cơ chế Cascading (Tính kế thừa và thứ tự ưu tiên)Chữ "Cascading" trong CSS có nghĩa là "phân tầng". Đây là cơ chế quan trọng nhất giúp CSS hoạt động linh hoạt. Nó quyết định quy tắc nào sẽ được áp dụng nếu có nhiều quy tắc cùng tác động lên một phần tử. Thứ tự ưu tiên Mô tả 1. Inline Style Code CSS viết trực tiếp trong thẻ HTML (ưu tiên cao nhất). 2. ID Selector Định dạng thông qua thuộc tính
Box Model - "Trái tim" của bố cục CSSMọi phần tử trong CSS đều được coi là một "cái hộp" hình chữ nhật. Cơ chế này được gọi là Box Model. Hiểu được cơ chế này là chìa khóa để làm chủ bố cục trang web:
Việc hiểu rõ Box Model giúp bạn kiểm soát chính xác khoảng cách và vị trí của từng thành phần, đảm bảo website hiển thị đẹp mắt trên mọi thiết bị, từ điện thoại di động đến màn hình máy tính lớn. Tại sao cơ chế này lại hiệu quả?Thay vì phải sửa từng thẻ 6. Minh họa bằng ví dụ code thực tếĐể hiểu rõ cách CSS "thổi hồn" vào một trang web, hãy tưởng tượng HTML là bộ khung xương (cấu trúc), còn CSS là lớp da thịt, trang phục và phụ kiện giúp trang web trở nên sống động. Dưới đây là sự so sánh trực quan giữa một trang web "trần trụi" và một trang web đã được "trang điểm" bằng CSS. Ví dụ: Tạo một chiếc thẻ (Card) hiển thị thông tin sản phẩmGiả sử chúng ta có một đoạn mã HTML đơn giản dùng để hiển thị thông tin của một cuốn sách. Nếu không có CSS, trình duyệt sẽ chỉ hiển thị các dòng chữ đen trên nền trắng, sát lề và không có phân cấp rõ ràng. Áp dụng CSS để thay đổi diện mạoBây giờ, chúng ta sẽ sử dụng CSS để biến đoạn mã trên thành một chiếc thẻ đẹp mắt, có đổ bóng, căn lề và màu sắc hài hòa. CSS hoạt động dựa trên Bộ chọn (Selector) để xác định đối tượng cần chỉnh sửa và các Thuộc tính (Property) để định nghĩa kiểu dáng. Phân tích chi tiết các thành phần trong CSSĐể nắm vững cách CSS vận hành, bạn cần hiểu rõ cú pháp cơ bản của nó. Một cấu trúc CSS (Rule set) gồm có 2 phần chính:
Bảng tổng hợp các thuộc tính CSS phổ biếnThuộc tính Mô tả Ví dụ Tại sao cách tiếp cận này lại hiệu quả?
Nếu bạn có 100 sản phẩm trên trang web, bạn không cần phải viết code định dạng cho từng sản phẩm một. Bạn chỉ cần gán class Ngoài ra, CSS còn cho phép bạn sử dụng Media Queries để điều chỉnh giao diện tùy theo thiết bị. Ví dụ, bạn có thể thiết lập để trên máy tính thẻ sản phẩm có chiều rộng 300px, nhưng trên điện thoại di động, nó sẽ tự động giãn ra 100% chiều ngang màn hình mà không cần thay đổi cấu trúc HTML gốc. Việc hiểu rõ cách kết hợp giữa bộ chọn, thuộc tính và các kỹ thuật như Responsive Design sẽ giúp bạn làm chủ giao diện, biến những trang tài liệu HTML khô khan thành những tác phẩm nghệ thuật kỹ thuật số chuyên nghiệp. 7. Mối quan hệ mật thiết giữa HTML và CSSĐể hiểu rõ bản chất của việc xây dựng website, hãy tưởng tượng HTML và CSS giống như quá trình xây dựng một ngôi nhà. HTML đóng vai trò là phần khung xương, gạch đá và bê tông – nó xác định vị trí của cửa chính, số lượng phòng và cấu trúc cơ bản. Ngược lại, CSS đóng vai trò là kiến trúc sư nội thất và họa sĩ – nó quyết định màu sơn tường, loại gạch lát nền, ánh sáng trong phòng và cách sắp xếp đồ đạc sao cho đẹp mắt. HTML: Bản chất của dữ liệuHTML (HyperText Markup Language) chịu trách nhiệm về cấu trúc. Nó cho trình duyệt biết đâu là tiêu đề, đâu là đoạn văn, đâu là nút bấm. Tuy nhiên, HTML không quan tâm đến việc những thứ đó trông như thế nào. Một trang web chỉ có HTML sẽ trông giống như một bản thảo văn bản thuần túy: chữ đen trên nền trắng, các phần tử xếp chồng lên nhau một cách khô khan. CSS: Linh hồn của giao diệnCSS (Cascading Style Sheets) là lớp phủ bên ngoài. Nó không thay đổi nội dung (dữ liệu) của website, mà nó thay đổi cách hiển thị của dữ liệu đó. Mối quan hệ giữa chúng là sự tách biệt hoàn toàn giữa Nội dung (Content) và Trình bày (Presentation). Minh họa thực tế qua CodeHãy xem xét ví dụ về một thẻ tiêu đề đơn giản. Đây là cách HTML "nói" với trình duyệt về nội dung: Nếu không có CSS, trình duyệt sẽ hiển thị mặc định theo kiểu của nó (thường là font Times New Roman, chữ đen, kích thước cố định). Bây giờ, hãy xem CSS "thổi hồn" vào đoạn code HTML trên như thế nào: Tại sao mối quan hệ này lại quan trọng?
Bảng so sánh: Sự phân công nhiệm vụĐặc điểm HTML CSS Vai trò Xây dựng cấu trúc, nội dung Trang trí, định hình phong cách Tư duy Đây là cái gì? (Tiêu đề, ảnh, list) Nó trông như thế nào? (Màu, font, vị trí) Nếu thiếu Website không có nội dung Website cực kỳ xấu, khó đọc
Tóm lại, HTML cung cấp "nguyên liệu" và CSS cung cấp "phong cách". Mối quan hệ mật thiết này tạo nên sự cân bằng hoàn hảo: HTML đảm bảo tính logic và ngữ nghĩa, trong khi CSS đảm bảo trải nghiệm người dùng (UX) và tính thẩm mỹ (UI). Thiếu một trong hai, website sẽ không bao giờ đạt được sự chuyên nghiệp cần thiết trong thời đại số. 8. Kết luận: Tại sao CSS là "chìa khóa" cho một website chuyên nghiệp?Sau khi đã tìm hiểu về định nghĩa, nguồn gốc và các ưu điểm vượt trội, có thể khẳng định rằng CSS không chỉ là một công cụ hỗ trợ, mà là "trái tim" của giao diện người dùng (UI). Nếu ví website như một ngôi nhà, thì HTML chính là phần khung xương, gạch đá và bê tông để dựng lên cấu trúc; còn CSS chính là lớp sơn, gạch ốp lát, hệ thống chiếu sáng và phong cách nội thất giúp ngôi nhà đó trở nên sang trọng, tiện nghi và thu hút. Tại sao bạn không thể bỏ qua CSS?Trong thế giới web hiện đại, người dùng chỉ mất khoảng 0.05 giây để đánh giá một trang web. Nếu website của bạn chỉ có HTML, nội dung sẽ hiển thị dưới dạng văn bản thô sơ, không thứ tự, không màu sắc, gây cảm giác thiếu tin tưởng. CSS giúp bạn:
Minh họa sự khác biệt: Sức mạnh của CSSHãy tưởng tượng bạn có một đoạn văn bản HTML đơn thuần. Khi không có CSS, nó trông thật nhàm chán. Nhưng với một vài dòng CSS, chúng ta có thể "hô biến" nó thành một khối nội dung chuyên nghiệp: Khi áp dụng CSS:
Lộ trình làm chủ CSSĐể trở thành một lập trình viên web thực thụ, bạn không cần phải học thuộc lòng mọi thuộc tính CSS ngay lập tức. Hãy tập trung theo thứ tự ưu tiên sau:
Lời khuyên cuối cùngCSS là một lĩnh vực đòi hỏi sự kiên nhẫn. Đôi khi bạn sẽ gặp phải những lỗi hiển thị (bug) khó hiểu, nhưng đó chính là lúc bạn học được cách trình duyệt thực sự "đọc" mã nguồn của bạn. Đừng chỉ đọc lý thuyết, hãy mở trình chỉnh sửa code lên, thử thay đổi màu sắc, khoảng cách và quan sát sự thay đổi trực tiếp trên trình duyệt. Việc thực hành là cách duy nhất để chuyển hóa những dòng code vô tri thành một tác phẩm nghệ thuật kỹ thuật số. Hãy bắt đầu hành trình "trang điểm" cho những trang web của riêng bạn ngay hôm nay! |
| Sản phẩm của Nền tảng | NenTang.vn - Hành trang tới Tương lai |

