Не удается настроить правое поле в ячейке таблицы с помощью jQuery:last

#jquery #css #internet-explorer-7 #internet-explorer-6

#jquery #css #internet-explorer-7 #internet-explorer-6

Вопрос:

Это странно. Я пытаюсь повторить :last-child для более старых версий IE, которые не поддерживают псевдокласс CSS.

Если вы посмотрите на следующий код, изменение цвета фона работает, но поля — нет. Div внутри ячейки ( .inner ) в настоящее время имеет поле в 3 пикселя, но переопределения поля не происходит. Я знаю, что jQuery может перейти к div, потому что изменение цвета фона работает. Это проблема только с IE6 и IE7. У кого-нибудь есть предложение? Высоко ценится.

 $J('table tbody tr td .inner:last').css({ 'margin-right':'0px', 'background':'red' });
  

Дайте мне знать, если мне нужно предоставить больше информации.

Ответ №1:

:last-child — это селектор CSS3, и я думаю, вы хотите применить его к td, а не к .inner div, чтобы настроить поле .inner div в последней ячейке каждой строки:

$(‘table tbody tr td:last-child .inner’)…

Комментарии:

1. :last-child является селектором CSS3.

2. Спасибо, BoltClock…it был первым дочерним элементом, который они добавили в CSS2… Я предполагаю, что CSS4 будет иметь:предпоследний дочерний селектор?

3. у вас уже есть селекторы:nth-child() и:nth-last-child() 😀