2012-02-20 33 views
6

Tôi có HTML sau:CSS chọn hai yếu tố tiếp theo

... 
<li>...</li> 
<li>...</li> 
<li class="last">...</li> 

<li class="selected">...</li> # <- this 
<li>...</li>     # <- this 
<li class="last">...</li>  # <- this 

<li>...</li> 
<li>...</li> 
<li class="last">...</li> 
.... 

Vì vậy, về cơ bản các nhóm ba li s, người cuối cùng với một lớp cụ thể và trong một trong những nhóm người đầu tiên li với một lớp học đặc biệt .

Có cách nào với CSS thuần túy để chọn li với lớp selected và hai lớp tiếp theo, được đánh dấu trong mã ở trên không?

Tôi đã chọn mục tiếp theo bằng cách sử dụng li.selected + li, nhưng điều này không hoạt động đối với cái sau đó.

Trả lời

8

Đơn giản chỉ cần thêm một + li để đạt được nó:

li.selected, li.selected + li, li.selected + li + li 
+0

đặc tả CSS gì mùa thu này theo? Nó có được hỗ trợ rộng rãi trong các trình duyệt không? Tôi cần phải tập tin này đi một cách nào đó. –

+0

Bạn có chắc chắn về điều đó không? Không hoạt động với tôi trong Chrome hiện tại. –

+0

@Surreal Dreams: Đó là CSS2 và đã được IE7 + hỗ trợ trong nhiều năm, giống như bộ chọn con '>'. – BoltClock

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