IE8 ломается при использовании двух селекторов? - PullRequest
6 голосов
/ 31 декабря 2011

Я оформляю таблицу с использованием CSS, и я понял, что IE8 не поддерживает :nth-child

Поэтому, прежде чем я добавил поддержку IE8, CSS выглядел так

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

Затем я добавил еще один селектор, например

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

IE8 не нравится, он не распознает второй селектор, но если я выберу первый, как показано ниже, он будет работать

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

Есть идеи, как это исправить?

Очевидно, я мог бы просто использовать приведенный выше код, но я хотел бы оставить в обоих селекторах для будущих браузеров

Ответы [ 3 ]

12 голосов
/ 31 декабря 2011

Я бы попробовал сделать стиль отдельно (без запятой).IE8, вероятно, не распознает: nth child и пропускает объявление.

4 голосов
/ 31 декабря 2011

Если вы все еще хотите, чтобы ваш стиль nth-child(1) работал в IE8 (без добавления класса .datecol), вы можете изменить свой CSS следующим образом:

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

Приведенный выше кодбудет нацелен на второй td - это то, что, как я полагаю, вы собираетесь делать с nth-child(1), и это поддержка в более широком диапазоне браузеров.

2 голосов
/ 31 декабря 2011

Я чувствую, что здесь что-то упущено.Разве вы не можете просто разделить их на 2 разные строки?

.my-comments table.comments-list tr td:nth-child(1){width:18%;}
.my-comments table.comments-list tr .datecol{width:18%;}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...