2011-01-04 2 views
3

У меня есть таблица, в которой столбцы имеют другой фон, заданный colgroup. Однако в IE6/7 он полностью игнорирует фон colgroup и принимает значение background.css для ячейки (которое является фоном: прозрачным). Как я могу исправить это, не переходя в каждую ячейку и вручную вводить фоновое значение?Reset.css переопределяет фон colgroup в IE7/IE6

HTML

<table id="services-table" border="0" cellpadding="0" cellspacing="0" width="100%"> 
<colgroup>  
<col class="services-oddcolumn" />   
<col class="services-evencolumn" />  
</colgroup> 
<tbody> 
    <tr>  
    <td>Column #1, Row #1</td> 
    <td>Column #2, Row #1</td> 
    </tr> 

    <tr> 
    <td>Column #1, Row #2</td> 
    <td>Column #2, Row #2</td> 
    </tr> 
</tbody> 

RESET (это находится выше основного файла CSS)

html,body, table,tr,th,td {background:transparent;} //it's taking this background value for TD and column 

CSS

.services-oddcolumn{background-color:#000 !important; width:10%;} 
.services-evencolumn{background-color:#fff !important; width:10%;} 

EDIT - В конце концов, нет никакого «чистый» исправить, я просто должен был изменить файл reset.css так таблица, тр, е, TD-теги были исключены из фона: прозрачный свойство

ответ

4

Во-первых, поздравляю даже зная о теге <colgroup>, не говоря уже о его использовании. Это не совсем известный элемент в арсенале разработчиков HTML.

К сожалению, одна из причин, почему это не очень хорошо известно, заключается в том, что она не очень хорошо поддерживается, и похоже, что вы попали в ошибку, с которой вы не сможете обойтись.

Посмотрите на эту страницу: http://marc.baffl.co.uk/bugs.php и найдите слово «colgroup». Вы найдете описание различных ошибок, с которыми вы столкнетесь, а также таблицу, в которой браузеры поддерживают ее должным образом. К сожалению, для вас IE6 и IE7 имеют слово «нет» в каждом столбце этой таблицы.

Возможно, вам трудно работать, если вы планируете поддерживать IE6 и IE7.

[EDIT] Следует отметить, что это отсутствие поддержки в IE особенно иронично, учитывая, что <colgroup> изначально было IE-специфическим расширением в IE4.

Если вы хотите поддерживать более старые IE, мое предложение состоит в том, чтобы отказаться от <colgroup> и просто использовать классы для ваших <td> элементов для достижения такого же эффекта.

+0

Да, нет реального способа сделать это правильно. В конце концов, мне просто пришлось изменить файл reset.css, поэтому таблицы, tr, th, td были исключены из фона: прозрачное свойство –

Смежные вопросы