2011-11-06 38 views
6

Dường như tại một thời điểm kết hợp nhiều bộ chọn giả là có thể. Ví dụ, người ta có thể làm điều này:Kết hợp nhiều bộ chọn giả

a:visited:hover {color: red}

Một tìm kiếm Google nhanh chóng cho thấy nhiều ví dụ về điều này trong hành động, here, here, và here. Tôi không thể làm cho tính năng này hoạt động trong các phiên bản mới nhất của Safari, Firefox hoặc Chrome. Bất cứ ai có thể giải thích lý do tại sao tính năng này đã bị suy thoái và/hoặc bị tàn tật?

Trả lời

11

Không thể sử dụng kính giả :visited cho hầu hết các kiểu dáng trong nhiều trình duyệt hiện đại nữa vì đó là lỗ hổng bảo mật. Xem this link để có một cuộc thảo luận chính thức hơn về nó.

Phiên bản ngắn gọn là nếu bạn có thể tạo kiểu khác nhau, bạn có thể sử dụng để xác định xem mọi người đã truy cập vào các trang web khác nhau chưa, và do đó nhắm mục tiêu chúng dựa trên lịch sử trình duyệt của họ. Hầu hết các trình duyệt hiện đại do đó hạn chế rất nhiều kiểu dáng có thể được thực hiện trên chúng.

Bạn vẫn có thể chuỗi các giả phân tử. Ví dụ: a:focus:hover chỉ hoạt động tốt khi chỉ áp dụng kiểu nếu phần tử được lấy nét và được di chuột. Xem this link để trình diễn.

+1

Tôi không nghĩ bạn có thể sử dụng nhiều bộ chọn giả. Bản demo của bạn không hoạt động cho tôi. – corysimmons

+0

Nó hoạt động tốt (trong Chrome, ít nhất); nhấp vào trong khu vực demo, nhấn tab để tập trung liên kết, sau đó di chuột qua nó để xem nó được in đậm. –

Các vấn đề liên quan