<rmcreative>

RSS

Каскад background-а для table в IE7

16 декабря 2010

Сегодня IE7 преподнёс неприятный сюрприз. Необходимо было положить фоновую картинку под table. Положил. Проверил в IE8 и остальных. Порадовался. Открыл IE7 и был немного удивлён тем, что картинка повторяется. Сначала подумал на несрабатывание no-repeat, но оказалось, что background, заданный для table, в IE7 каскадируется на каждую td. Итого, чтобы положить фон под всю таблицу пришлось:

/* задать фон */
#mytable {
  background: url(/images/table-bg.png) no-repeat 0 0;
}
 
/* вернуть прозрачный фон ячейкам */
#mytable td {
  background: transparent;
}

И, всё-таки, как приятен IE после Outlook…

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

  1. №3566
    Евгений
    Евгений 16.12.2010, 8:05:53

    Спасибо, столкнулся с такой-же проблемой )

  2. №3567
    Metaller
    Metaller 16.12.2010, 8:19:12

    Как тут не вспомнить Александра Сергеевича "О сколько нам открытий чудных..."

  3. №3568
    Alexei Kartashev
    Alexei Kartashev 16.12.2010, 10:34:37

    Буквально вчера мучался с подобно проблемой. Задача не вполне тривиальная: некоторые строки таблицы должны быть объединены общим градиентным фоном. Следующий дальше блок строк должен вновь визуально отделен от предыдущего тем же самым фоном. Попробовал обернуть строки в tbody, задав для него фон (пример). FF, Opera, IE8 как логично отрисовали фон по всей высоте tbody. В Webkit, IE6-7 фон наследовался на каждую строку. Пришлось вместо tbody использовать вложенный таблицы с фоном.

    Да, в IE6 указанный способ может не пройти, избавлялся заданием background-color:none, т.к. transparent ни в какую не хотел отрабатывать.

  1. Почта опубликована не будет.

  2. Можно использовать синтаксис Markdown или HTML.

  3. Введите ответ в поле. Щёлкните, чтобы получить другую задачу.