ID, class trong HTML và thuộc tính float trong CSS

Lập trình Front End cơ bản với website Landing Page

5.0 (8 đánh giá)
Tạo bởi Kteam Cập nhật lần cuối 6 năm trước 49.794 lượt xem 3 bình luận
Tác giả/Dịch giả: Kteam
Học nhanh

Danh sách bài học

ID, class trong HTML và thuộc tính float trong CSS

Dẫn nhập

Ở bài trước thì chúng ta đã cùng nói về MODEL BOX TRONG CSS  cũng như các thuộc tính liên quan của nó đến một phần tử HTML.

Trong bài học ngày hôm nay chúng ta sẽ tìm hiểu về ID và class trong HTML và thuộc tính float trong CSS.

Nội dung

Để đọc hiểu bài này, bạn nên có kiến thức về:

Trong bài này, Kteam sẽ cùng bạn tìm hiểu về:

  • ID và Class trong HTML
  • Các cú pháp nâng cao hiệu suất code
  • Thuộc tính Float trong CSS
  • Clearfix class

Các thao tác được thực hành trên project của bài trước, bạn có thể tải xuống project ở cuối bài MODEL BOX TRONG CSS

Lưu ý: Bài viết nhằm tóm tắt nội dung thực hiện project & giúp bạn nắm bắt các phần được hướng dẫn một cách đơn giản nhất. Tuy nhiên, hãy theo dõi video để học hỏi các kiến thức và kỹ thuật chi tiết nhất từ tác giả.


ID và Class trong HTML

Giả sử, với project Blog mà chúng ta đang làm trong bài trước, mình cần thêm các thẻ <h1> khác vào trong blog như sau:

Tuy nhiên, do mình đã chỉ định thẻ  <h1>HOWKTEAM BLOG</h1>  trước đó có các thuộc tính riêng tại file style.css như chữ có kích thước 900px, màu xanh lá (green); nền màu aqu; có viền chấm 2px (dotted) màu đỏ (red),…Điều này dẫn đến việc các thẻ <h1> được thêm vào trong file index.html sau này có định dạng thuộc tính tương tự thẻ <h1> ban đầu mà mình không mong muốn. 

Chính vì vậy Class & Id sinh ra để giải quyết các trường hợp này, giúp xác định cụ thể phần tử mà bạn muốn định dạng. Tuy nhiên, ở khóa LẬP TRÌNH FRONT END CƠ BẢN có thể bạn chưa thấy được nhiều khác biệt của 2 thuộc tính này, mà sẽ tìm hiểu rõ hơn trong các khóa CSS NÂNG CAO.


Thuộc tính ID

Thuộc tính id dùng để đặt tên cho một phần tử trong HTML, mỗi thuộc tính id chỉ chỉ định cho một phần tử duy nhất trong file HTML hiện hành.

Giá trị id được sử dụng trong CSS hoặc JavaScript để chỉ định cụ thể định dạng hoặc thực hiện tác vụ nhất định cho phần tử đó.

Gán thuộc tính id trong HTML:

<phần tử HTML  id= “id_name  “ >

Sử dụng giá trị id trong CSS:

#id_name{

thuộc tính: giá trị;

}

Trong đó:

  • Thuộc tính id có thể sử dụng trên bất kỳ phần tử HTML nào.
  • id_name (giá trị id) chứa các ký tự chữ cái, số, gạch (_), nối (-); có phân biệt chữ hoa và chữ thường. Trong giá trị id phải chứa ít nhất một ký tự và không có khoảng trắng. Không nên bắt đầu tên id bằng số.

Ví dụ:

Tại file index.html

Tại file style.css thay h1 bằng giá trị id heading1

Sau khi gán id trang blog thay đổi như hình: 

  • Ngoại trừ thẻ <h1> có chứa thuộc tính id heading1 có định dạng riêng, các thẻ <h1> khác đều có định dạng mặc định.

Ứng dụng Id trong việc đánh dấu

Thuộc tính id cung cấp cho bạn một ứng dụng khá thú vị, thường hay nhìn thấy ở trang LandingPage hoặc một số web có nội dung khá dài.

Cụ thể, bạn có thể dùng id như một vị trí, sau đó thêm liên kết đi đến vị trí đó

Tạo vị trí đánh dấu theo cách gán id thông thường

<phần tử HTML  id= “id_name  “

Tạo đường dẫn đến vị trí đánh dấu (trong cùng trang HTML)

<a href=”#id_name”> nội_dung_gắn_liên_kết </a>

Tạo đường dẫn đến vị trí đánh dấu (từ trang khác)

<a href=”<tên_trang_html>#id_name”> nội_dung_gắn_liên_kết </a>

Ứng dụng này sẽ được nói rõ hơn trong quá trình xây dựng website Langding Page của khóa học này.


Thuộc tính class

Thuộc tính class dùng để đặt tên cho các phần tử trong html, mỗi thuộc tính class có thể chỉ định cho nhiều phần tử HTML (cùng hoặc khác loại) để có cùng định dạng.

Giá trị class được sử dụng trong CSS hoặc JavaScript để chỉ định đồng loạt các định dạng chung hoặc thực hiện chung tác vụ cho các phần tử HTML có cùng thuộc tính class.

Gán thuộc tính class trong HTML:

<phần tử HTML  class= “class_name  “ >

Sử dụng giá trị class trong CSS:

.class_name{

thuộc tính: giá trị;

}

Trong đó:

  • Thuộc tính class có thể sử dụng trên bất kỳ phần tử HTML nào.
  • class_name (giá trị class) chứa các ký tự chữ cái, số, gạch (_), nối (-); có phân biệt chữ hoa và chữ thường. Trong giá trị class phải chứa ít nhất một ký tự và không có khoảng trắng. Không nên bắt đầu tên class bằng số.

Ví dụ: 

Tại file index.html thay vì dùng id heading1, mình đổi thành class heading. Và thêm thẻ p cũng có cùng class heading như thẻ h1

Tại file style.css thay giá trị id heading1 bằng giá trị class heading

Sau khi gán class trang blog thay đổi như hình: 

  • Các thẻ có chứa thuộc tính class heading (như h1, p) có cùng kiểu định dạng , các thẻ khác đều có định dạng mặc định.

Sử dụng nhiều class cho một phần tử HTML

Các phần tử HTML có thể có một hoặc nhiều thuộc tính class, các thuộc tính được tách biệt nhau bằng dấu cách.

<phần tử HTML  class= “class_name_1  class_name_2  “ >

Ví dụ:

Index.html

Style.css

Từ kiến thức ở các phần trên, bạn hoàn toàn có thể chạy thử và phân tích kết quả của ví dụ này!


Các cú pháp nâng cao hiệu suất code

Trong quá trình code, việc gõ đủ định dạng của các thẻ khiến bạn khá mất thời gian dù đã được hỗ trợ nhắc lệnh từ Visual Studio Code. Để tối đa hiệu suất code, Kteam gợi ý bạn sử dụng một số cú pháp sau

  • Gõ nhanh các cặp thẻ div chứa id

#id_name

Ví dụ: gõ #heading1 cho kết quả

  • Gõ nhanh các cặp thẻ div chứa class 

.class_name

Ví dụ: gõ .container cho kết quả

  • Gõ nhanh các phần tử khác trong HTML với id

phần_tử_HTML#id_name

Ví dụ: gõ h1#heading1 cho kết quả

  • Gõ nhanh các phần tử khác trong HTML với class

phần_tử_HTML.id_name

Ví dụ: gõ h1.container cho kết quả

Cú pháp reform trang HTML

Ctrl + A sau đó Ctrl + K cuối cùng là Ctrl + F

Giúp canh chỉnh các thẻ code đã sử dụng trong file HTML giúp bạn dễ dàng quan sát file HTML của bạn.

Chuyển comment thành code

Bạn có thể chuyển code thành comment và ngược lại bằng cách tô đen đoạn code cần chuyển rồi dùng tổ hợp phím: 

Ctrl + /

Ta có thể chỉnh sửa một chút tại file index.html giúp bạn ứng dụng các cú pháp nhanh trên:


Thuộc tính float trong CSS

Nói một cách đơn giản thuộc tính Float xác định rằng một phần tử HTML nên được đặt dọc theo bên trái hay bên phải của vùng chứa của nó, đồng thời nó cho phép các phần tử văn bản và phần tử nội tuyến khác quấn quanh nó.

Phần tử được xóa khỏi luồng thông thường của trang web, mặc dù vẫn còn một phần của luồng ( ngược lại với vị trí hiển thị tuyệt đối)

Cú pháp:

phần_tử_HTML{

     float: left (hoặc right );

   /*  Mặc định float: none  */

}

Ví dụ: Sử dụng thuộc tính float: left (trong trường hợp này content chiếm 75% và avatar chiếm 25% chiều rộng container)

style.css

Kết quả sau khi sử dụng thuộc tính float như sau:


Clearfix Class

Clearfix class trong HTML

Clearfix class nói ngắn gọn là 1 kĩ thuật giúp cho element không chứa thuộc tính float, không phải chịu ảnh hưởng của các phần tử chứa thuộc tính float gần nó.

Lưu ý: Ở phần này các bạn không nhất thiết phải hiểu quá sâu, chỉ cần biết cách áp dụng là được

Trong ví dụ trên, nếu để ý bạn sẽ thấy nội dung phần Info cũng trôi theo phần avatar dù không gán thuộc tính float: left

Để giải quyết vấn đề này, chúng ta sẽ sử dụng Clearfix Class:

index.html

Thuộc tính CSS trong clearfix

Có nhiểu cách tạo thuộc tính CSS cho class clearfix, dưới đây là mình giới thiệu cho các bạn 1 trong số đó.

Sau khi áp dụng clearfix class, bạn có thể thấy phần info không còn bị ảnh hưởng bởi thuộc tính float của avatar

Bạn có thể tham khảo chi tiết hơn về clearfix class tại: 

https://www.w3schools.com/css/css_float.asp


Project tham khảo 

Nếu việc thực hành theo hướng dẫn không diễn ra suôn sẻ như mong muốn. Bạn cũng có thể tải xuống PROJECT THAM KHẢO ở link bên dưới! 


Kết luận

Ở bài này chúng ta đã cùng nhau tìm hiểu về cách sử dụng ID và Class trong HTML và cách sử dụng thuộc tính float trong CSS.

Ở bài sau chúng ta sẽ tìm hiểu THUỘC TÍNH POSOTION TRONG CSS và hoàn thiện trang Blog của chúng ta.

Cảm ơn các bạn đã theo dõi bài viết. Hãy để lại bình luận và góp ý của mình để giúp phát triển bài viết tốt hơn. Đừng quên: “Luyện tập - Thử thách - Không ngại khó”.

 


Tài liệu 

Nhằm phục vụ mục đích học tập Offline của cộng đồng, Kteam hỗ trợ tính năng lưu trữ nội dung bài học ID, class trong HTML và thuộc tính float trong CSS dưới dạng file PDF trong link bên dưới.

Ngoài ra, bạn cũng có thể tìm thấy các tài liệu được đóng góp từ cộng đồng ở mục TÀI LIỆU trên thư viện Howkteam.com

Đừng quên like hoặc +1 Google để ủng hộ Kteam và tác giả nhé! 


Thảo luận

Nếu bạn có bất kỳ khó khăn hay thắc mắc gì về khóa học, đừng ngần ngại đặt câu hỏi trong phần BÌNH LUẬN bên dưới hoặc trong mục HỎI & ĐÁP trên thư viện Howkteam.com để nhận được sự hỗ trợ từ cộng đồng. 

 


Tải xuống

Tài liệu

Nhằm phục vụ mục đích học tập Offline của cộng đồng, Kteam hỗ trợ tính năng lưu trữ nội dung bài học ID, class trong HTML và thuộc tính float trong CSS dưới dạng file PDF trong link bên dưới.

Ngoài ra, bạn cũng có thể tìm thấy các tài liệu được đóng góp từ cộng đồng ở mục TÀI LIỆU trên thư viện Howkteam.com

Đừng quên likeshare để ủng hộ Kteam và tác giả nhé!


Thảo luận

Nếu bạn có bất kỳ khó khăn hay thắc mắc gì về khóa học, đừng ngần ngại đặt câu hỏi trong phần bên dưới hoặc trong mục HỎI & ĐÁP trên thư viện Howkteam.com để nhận được sự hỗ trợ từ cộng đồng.

Tác giả/Dịch giả

Khóa học

Lập trình Front End cơ bản với website Landing Page

Nếu bạn yêu thích lập trình web nhưng còn lơ ngơ không biết bắt đầu từ đâu hay đã biết cơ bản mà chưa làm được một sản phẩm nhất định nào, thì đây chính là khóa học dành cho bạn – LẬP TRÌNH FRONT END CƠ BẢN VỚI WEBSITE LANDING PAGE.

Trong phần này, Kteam sẽ giới thiệu cho các bạn về nội dung chúng ta sẽ được hướng dẫn cho khóa học này, cũng như là project mà chúng ta sẽ cùng nhau thực hiện.

Nào! Bắt đầu thôi! 

Đánh giá

Midir reynard đã đánh giá 7 tháng trước

moon272 đã đánh giá 5 năm trước

Senik đã đánh giá 5 năm trước

Đỗ Quốc Minh đã đánh giá 5 năm trước

khóa học rất hay, hướng dẫn dễ hiểu, rất phù hợp với người mới bắt đầu như mình.

Quang Binh đã đánh giá 5 năm trước

Khóa học rất hay, giảng dễ hiểu. Hy vọng sẽ có thật nhiều khóa học như thế này nữa. Thanks Kteam.

Bình luận

Để bình luận, bạn cần đăng nhập bằng tài khoản Howkteam.

Đăng nhập
pqcuong đã bình luận 4 năm trước

Cho em hỏi vì sao khi dùng float left với class content thì class avatar với info không ảnh hưởng mà dùng float left vơi avatar thì class info lại trôi theo ạ

ngoanh8688 đã bình luận 5 năm trước

Video rất hay và hữu ích
!

Cu Xin Author đã bình luận 5 năm trước

trong vscode, với html, css thì các bạn cũng có thể nhấn alt-shift-f để format document nhanh hơn

Không có video.