Tìm hiểu và cách sử dụng Pseudo Class
Pseudo (phát âm là: sju:dou) tiếng Việt có nghĩa là “giả, không thật”, sở dĩ nó được đặt tên là Pseudo Class hay gọi là “Class giả” là vì nó không được gắn liền với những thẻ XHTML như những class thông thường bạn đã biết. Pseudo Class sẽ tạo ra thay đổi tới thành phần của XHTML khi một sự kiện nào đó sẽ xảy ra. Pseudo Class được sử dụng thông dụng nhất với các đường liên kết khi người dùng di chuột qua hoặc nhấp vào nó. Với những trình duyệt mới hơn (trừ Internet Explorer 6) bạn có thể dễ dàng tạo ra hiệu ứng Rollover với bất cứ thành phần nào trên trang chứ không chỉ thẻ <a>.
Pseudo Class cho đường liên kết
Pseudo Class được sử dụng nhiều nhất với các đường liên kết (thẻ <a>) để tạo ra hiệu ứng thay đổi trạng thái chữ mỗi khi người dùng di chuột qua nó, khi bạn di chuột qua sẽ có màu nền là màu xanh nhạt.
Có tất cả 4 trạng thái của đường liên kết
Trong 4 trạng thái trên thì bạn không nhất thiết phải khai báo cả 4 trạng thái. Thường thì người ta chỉ khai báo 2 trạng thái chủ yếu là :link và :hover. Còn :visited và :active thì cũng không thực sự cần thiết lắm. Trình duyệt sẽ bỏ qua những trạng thái không được khai báo.
Lưu ý: Tuy nhiên để có hiệu ứng Rollover, bạn phải khai báo :hover sau :link hoặc :visited. Hoặc bạn có thể nhớ theo kiểu LoVe Hate
Pseudo Class còn có thể được áp dụng cho bất cứ thành phần nào để tạo hiệu ứng Rollover chứ không chỉ với các đường liên kết. Ví dụ
Lưu ý: IE6 không hỗ trợ Pseudo Class ở những thành phần khác ngoại trừ đường liên kết. IE7 có hỗ trợ Pseudo Class nhưng bạn phải khai báo là Strict DOCTYPE thì nó mới hoạt động.
First Child
Tính năng này dùng để hướng đối tượng là con “trưởng” của một thành phần “đông con”, nơi x là con đầu
Ví dụ:
với code xhtml như sau
Ở đoạn code trên thì hai thẻ <em> đều là con của thẻ <p> nhưng thẻ <em> đứng trước là con đầu, cho nên nó bị ảnh hưởng bởi luật trên và kết quả bạn sẽ có
Tính năng này chủ yếu dùng để hướng đối tượng
Pseudo Elements
Pseudo Elements cho phép bạn tạo ra những hiệu ứng đặc biệt mà bạn không cần phải thêm markup vào code.
x:first-letter ở đó x là tên thẻ bị ảnh hưởng
Với markup tương ứng
x:first-line <– nơi x là tên thẻ bị ảnh hưởng
Cái hay của dòng code này là nếu cửa sổ trình duyệt lớn thì bất cứ chữ nào nằm vừa dòng đầu tiên sẽ bị IN HOA. Nếu cửa sổ bé hơn, nó sẽ đẩy chữ xuống dưới và những chữ còn lại vẫn sẽ được IN HOA.
Chúc các bạn thành công.
Pseudo (phát âm là: sju:dou) tiếng Việt có nghĩa là “giả, không thật”, sở dĩ nó được đặt tên là Pseudo Class hay gọi là “Class giả” là vì nó không được gắn liền với những thẻ XHTML như những class thông thường bạn đã biết. Pseudo Class sẽ tạo ra thay đổi tới thành phần của XHTML khi một sự kiện nào đó sẽ xảy ra. Pseudo Class được sử dụng thông dụng nhất với các đường liên kết khi người dùng di chuột qua hoặc nhấp vào nó. Với những trình duyệt mới hơn (trừ Internet Explorer 6) bạn có thể dễ dàng tạo ra hiệu ứng Rollover với bất cứ thành phần nào trên trang chứ không chỉ thẻ <a>.
Pseudo Class cho đường liên kết
Pseudo Class được sử dụng nhiều nhất với các đường liên kết (thẻ <a>) để tạo ra hiệu ứng thay đổi trạng thái chữ mỗi khi người dùng di chuột qua nó, khi bạn di chuột qua sẽ có màu nền là màu xanh nhạt.
Có tất cả 4 trạng thái của đường liên kết
- Link: đơn thuần là đường liên kết để báo cho người đọc biết nó là đường liên kết.
- Visited: Người đọc đã từng nhấp chuột vào link này rồi.
- Hover: Người đọc di chuột qua đường liên kết
- Active: Đường liên kết đang được người đọc nhấp chuột.
- a:link {color:blue;}
- a:visited {color:gray;}
- a:hover {color:red; text-decoration:none;}
- a:active {color:navy;}
- Bình thường sẽ có màu xanh và gạch chân là giá trị mặc định.
- Đường liên kết đã được người dùng nhấp vào, nó sẽ có màu xám.
- Người dùng di chuột lên (chưa nhấp) nó sẽ có màu đỏ và không có gạch chân
- Người dùng chỉ nhấp và giữ chuột nó sẽ có màu xanh đậm (ít khi xảy ra)
Trong 4 trạng thái trên thì bạn không nhất thiết phải khai báo cả 4 trạng thái. Thường thì người ta chỉ khai báo 2 trạng thái chủ yếu là :link và :hover. Còn :visited và :active thì cũng không thực sự cần thiết lắm. Trình duyệt sẽ bỏ qua những trạng thái không được khai báo.
Lưu ý: Tuy nhiên để có hiệu ứng Rollover, bạn phải khai báo :hover sau :link hoặc :visited. Hoặc bạn có thể nhớ theo kiểu LoVe Hate
Pseudo Class còn có thể được áp dụng cho bất cứ thành phần nào để tạo hiệu ứng Rollover chứ không chỉ với các đường liên kết. Ví dụ
Mã:
h1:hover {background-color:green;}
Lưu ý: IE6 không hỗ trợ Pseudo Class ở những thành phần khác ngoại trừ đường liên kết. IE7 có hỗ trợ Pseudo Class nhưng bạn phải khai báo là Strict DOCTYPE thì nó mới hoạt động.
First Child
Mã:
x:first-child
Tính năng này dùng để hướng đối tượng là con “trưởng” của một thành phần “đông con”, nơi x là con đầu
Ví dụ:
Mã:
.vi_du em:first-child {color:red;}
với code xhtml như sau
Mã:
<p style="em:first-child: color: red;" class="vi_du">Tính năng này <em>chủ yếu</em> dùng để hướng <em>đối tượng</em></p>
Ở đoạn code trên thì hai thẻ <em> đều là con của thẻ <p> nhưng thẻ <em> đứng trước là con đầu, cho nên nó bị ảnh hưởng bởi luật trên và kết quả bạn sẽ có
Tính năng này chủ yếu dùng để hướng đối tượng
Pseudo Elements
Pseudo Elements cho phép bạn tạo ra những hiệu ứng đặc biệt mà bạn không cần phải thêm markup vào code.
x:first-letter ở đó x là tên thẻ bị ảnh hưởng
Mã:
p:first-letter {font-size:300%;}
Với markup tương ứng
Mã:
<p>Trên đây chỉ là những hiệu ứng cơ bản nhất của Pseudo Class cho đường liên kết.</p>
x:first-line <– nơi x là tên thẻ bị ảnh hưởng
Mã:
p:first-line {font-variation:small-caps;}
Cái hay của dòng code này là nếu cửa sổ trình duyệt lớn thì bất cứ chữ nào nằm vừa dòng đầu tiên sẽ bị IN HOA. Nếu cửa sổ bé hơn, nó sẽ đẩy chữ xuống dưới và những chữ còn lại vẫn sẽ được IN HOA.
Chúc các bạn thành công.
Nguồn: izwebz.com
Bài viết liên quan
Bài viết mới