Pseudo-classes trong CSS
Pseudo-classes là gì? Một pseudo-classes được sử dụng để xác định trạng thái đặc biệt của một phần tử. Ví dụ, chúng có thể được sử dụng để: Định dạng một phần tử khi người dùng rê chuột vào đó Định dạng đường dẫn khi đã và chưa được click vào Định dạng một ...
Pseudo-classes là gì?
Một pseudo-classes được sử dụng để xác định trạng thái đặc biệt của một phần tử. Ví dụ, chúng có thể được sử dụng để:
- Định dạng một phần tử khi người dùng rê chuột vào đó
- Định dạng đường dẫn khi đã và chưa được click vào
- Định dạng một phần tử khi muốn gây chú ý vào đó
Cú pháp
Cú pháp của pseudo-classes là:
selector:pseudo-class { property:value; }
Anchor Pseudo-classes
Đường dẫn có thể được hiển thị bằng nhiều cách khác nhau:
/* đường dẫn khi chưa click */ a:link { color: #FF0000; } /* dường dẫn đã click */ a:visited { color: #00FF00; } /* rê chuột vào đường dẫn */ a:hover { color: #FF00FF; } /* đường dẫn đã chọn */ a:active { color: #0000FF; }
Lưu ý: a:hover phải xuất hiện sau a:link và a:visited trong định nghĩa của CSs để tạo ra hiệu ứng. a:active phải xuất hiện sau a:hover trong định nghĩa của CSS để tạo hiệu ứng. Tên Pseudo-class không phân biệt chữ hoa chữ thường.
Các Pseudo-class và CSS Class
Pseudo-classes có thể kết hợp với CSS classes:
Ví dụ khi bạn rê chuột vào đường link, màu sắc sẽ thay đổi:
a.highlight:hover { color: #ff0000; }
Di chuột vào <div>
Một ví dụ sử dụng pseudo-class :hover trong phần tử <div>:
div:hover { background-color: blue; }
Di chuyển chuột đơn giản
Di chuyển chuột vào phần tử <div> để hiển thị một phần tử <p> (như để giải thích cho một điều gì đó)
p { display: none; background-color: yellow; padding: 20px; } div:hover p { display: block; }
Pseudo-class :first-child trong CSS
Pseudo-class :first-child kết nối một phần tử đặc biệt là “con đầu tiên” của phần tử khác.
Phần tử <p> đầu tiên phù hợp
Trong ví dụ dưới đây, bộ chọn một vài phần tử <p> là “con đầu tiên” phù hợp của vài phần tử:
p:first-child { color: blue; }
Phần tử <i> đầu tiên phù hợp với tất cả phần tử <p>
Trong ví dụ dưới đây, bộ chọn phần tử <i> đầu tiên phù hợp với tất cả phần tử <p>:
p i:first-child { color: blue; }
Tất cả phần tử <i> phù hợp với tất cả “con đầu tiên” phần tử <p>
Trong ví dụ dưới đây, bộ chọn tất cả phần tử <i> phù hợp trong phần tử <p> là “con đầu tiên” của phần tử khác:
p:first-child i { color: blue; }
Pseudo-class :lang trong CSS
Pseudo-class :lang cho phép bạn định nghĩa một quy tắc đặc biệt cho các ngôn ngữ khác. Ví dụ bên dưới, :lang định xác định dấu nhắc cho phần tử <q> với lang=”no”:
<html> <head> <style> q:lang(no) { quotes: "~" "~"; } </style> </head> <body> <p>Some text <q lang="no">A quote in a paragraph</q> Some text.</p> </body> </html>
Pseudo Classes trong CSS
Selector | Ví dụ | Mô tả ví dụ |
:active | a:active | Chọn liên kết đang hoạt động |
:checked | input:checked | Chọn mỗi phần tử <input> đã kiểm tra |
:disabled | input:disabled | Chọn mỗi phần tử <input> bị vô hiệu |
:empty | p:empty | Chọn mỗi phần tử <p> không có con |
:enabled | input:enabled | Chọn mỗi phần tử <input> được bật |
:first-child | p:first-child | Chọn tất cả các phần tử <p> đó là con đầu tiên của cha mẹ nó |
:first-of-type | p:first-of-type | Chọn mỗi phần tử <p> là phần tử <p> đầu tiên của cha / mẹ |
:focus | input:focus | Chọn phần tử <input> cần nhấn mạnh |
:hover | a:hover | Chọn liên kết khi rê chuột qua |
:in-range | input:in-range | Chọn phần tử <input> với một giá trị trong phạm vi được chỉ định |
:invalid | input:invalid | Chọn tất cả các phần tử <input> có giá trị không hợp lệ |
:lang(language) | p:lang(it) | Chọn mỗi phần tử <p> với một giá trị thuộc tính lang bắt đầu với “it” |
:last-child | p:last-child | Chọn mỗi phần tử <p> là con cuối cùng của cha mẹ |
:last-of-type | p:last-of-type | Chọn mỗi phần tử <p> là phần tử <p> cuối cùng của cha mẹ |
:link | a:link | Chọn tất cả các liên kết chưa được click |
:not(selector) | :not(p) | Chọn mọi phần tử không phải là một phần tử <p> |
:nth-child(n) | p:nth-child(2) | Chọn mỗi phần tử <p> là con thứ hai của cha mẹ |
:nth-last-child(n) | p:nth-last-child(2) | Chọn mỗi phần tử <p> là con thứ hai của cha / mẹ nó, kể từ con cuối cùng |
:nth-last-of-type(n) | p:nth-last-of-type(2) | Chọn mỗi phần tử <p> là phần tử <p> thứ hai của cha / mẹ nó, tính từ con cuối cùng |
:nth-of-type(n) | p:nth-of-type(2) | Chọn mỗi phần tử <p> là phần tử <p> thứ hai của cha / mẹ |
:only-of-type | p:only-of-type | Chọn mỗi phần tử <p> là yếu tố <p> duy nhất của cha mẹ nó |
:only-child | p:only-child | Chọn mỗi phần tử <p> là con duy nhất của cha / mẹ của nó |
:optional | input:optional | Chọn các phần tử <input> không có thuộc tính “required” |
:out-of-range | input:out-of-range | Chọn các phần tử <input> với một giá trị bên ngoài phạm vi được chỉ định |
:read-only | input:read-only | Chọn các phần tử <input> với thuộc tính “readonly” được chỉ định |
:read-write | input:read-write | Chọn các phần tử <input> mà không có thuộc tính “readonly” |
:required | input:required | Chọn phần tử <input> với thuộc tính “required” được chỉ định |
:root | root | Chọn phần tử gốc của tài liệu |
:target | #news:target | Chọn phần tử #news đang hoạt động hiện tại (nhấp vào URL có chứa tên anchor đó) |
:valid | input:valid | Chọn tất cả các phần tử <input> với giá trị hợp lệ |
:visited | a:visited | Chọn tất cả liên kết đã truy cập |
Các phần tử Pseudo trong CSS
Selector | Ví dụ | Mô tả ví dụ |
::after | p::after | Chèn nội dung sau mỗi phần tử <p> |
::before | p::before | Chèn nội dung trước mỗi phần tử <p> |
::first-letter | p::first-letter | Chọn chữ cái đầu tiên của mỗi phần tử <p> |
::first-line | p::first-line | Chọn dòng đầu tiên của mỗi phần tử <p> |
::selection | p::selection | Chọn phần của một phần tử được chọn bởi người dùng |
- Học lập trình front-end cơ bản với bootstrap 4/html5/css3
- Học lập trình front-end nâng cao qua Project thực tế
- Học thiết kế web với Photoshop, CSS theo kiểu SASS
- Học cách sử dụng Git_hub cho lập trình viên
- Học lập trình Back-end PHP theo mô hình MVC cơ bản
- Học lập trình Back-end PHP theo mô hình MVC nâng cao
- Học lập trình Cơ sở dữ liệu với AngularJS
- Học lập trình theme wordpress. Làm ra mọi website hoàn chỉnh với wordpress
- Combo lập trình front-end từ cơ bản – nâng cao
- Combo lập trình back-end từ cơ bản đến nâng cao
- Combo lập trình web với word press từ A-Z