2011-12-31 43 views
6

Tôi styling một bảng sử dụng CSS và tôi nhận ra rằng IE8 không hỗ trợ :nth-childIE8 ngắt khi sử dụng hai bộ chọn?

Vì vậy, trước khi tôi thêm hỗ trợ cho IE8, css nhìn như vậy

.my-comments table.comments-list tr td:nth-child(1){width:18%;} 

Sau đó, tôi thêm vào bộ chọn khác như nên

.my-comments table.comments-list tr td:nth-child(1), .my-comments table.comments-list tr .datecol{width:18%;} 

IE8 không như thế này, nó sẽ không nhận ra bộ chọn 2 nhưng nếu tôi đưa ra một trong những đầu tiên như dưới đây sau đó nó hoạt động

.my-comments table.comments-list tr .datecol{width:18%;} 

Bất kỳ ý tưởng nào về cách sửa lỗi này?

Rõ ràng là tôi chỉ có thể sử dụng đoạn mã trên nhưng tôi muốn để lại trong cả hai bộ chọn cho các trình duyệt tương lai

+1

Tôi sẽ thử tạo kiểu riêng biệt (không có dấu phẩy). IE8 có lẽ không nhận ra đứa trẻ thứ n và bỏ qua tuyên bố. –

+0

@Grillz Cảm ơn rất nhiều, hoạt động hoàn hảo. Nếu bạn muốn để điều này như một câu trả lời, tôi sẽ chấp nhận! –

+0

Vui vì nó hoạt động. Tôi sẽ ném nó xuống trong câu trả lời. –

Trả lời

12

Tôi sẽ thử tạo kiểu riêng biệt (không có dấu phẩy). IE8 có lẽ không nhận ra đứa trẻ thứ n và bỏ qua tuyên bố.

2

tôi cảm thấy như tôi là thiếu một cái gì đó ở đây. Bạn không thể tách chúng thành 2 dòng khác nhau?

.my-comments table.comments-list tr td:nth-child(1){width:18%;} 
.my-comments table.comments-list tr .datecol{width:18%;} 
+0

Yea, bạn biết làm thế nào bạn bị mù bởi lol rõ ràng –

+0

Đó là đặc sản của tôi. – Different55

+2

trong khi bạn có thể làm điều này, nó đi ngược lại nguyên tắc DRY. :/ – CoryDorning

4

Nếu bạn vẫn muốn nth-child(1) phong cách của bạn để làm việc trong IE8 (với ra phải thêm lớp .datecol), bạn có thể thay đổi CSS của bạn như sau:

.my-comments table.comments-list tr td:first-child + td { 
    width:18%; 
} 

Đoạn mã trên sẽ nhắm mục tiêu thứ hai td - đó là những gì tôi tin rằng bạn đang hướng đến làm với nth-child(1) và hỗ trợ trên một phạm vi rộng hơn các trình duyệt.

+1

Cuộc gọi tốt, vì ': first-child' là một phần của CSS2. – BoltClock

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