Цвет фона CSS на таблице и отображение в Internet Explorer 6 некорректно - PullRequest
1 голос
/ 06 января 2010

У меня есть несколько довольно простых HTML и CSS, которые не работают в Internet Explorer 6.

<!DOCTYPE HTML>
<html>
    <head>
        <style>        
            table td.one.read {background-color:#FFD700;}
            table td.two.read {background-color:#0000ff;}
            table td.three.read {background-color:#ff8c00;}
        </style>
    </head>

    <body>
        <table>
            <tr class="head">
                <td></td>
                <td class='one read'>one</td>
                <td class='two read'>two</td>
                <td class='three read'>three</td>
            </tr>

            <tr>
                <td>Legend</td>
                <td class='one read'>1</td>
                <td class='two read'>2</td>
                <td class='three read'>3</td>
            </tr>
        </table>
    </body>
</html>

Простая таблица с разными цветами фона для каждого столбца. Я удалил кучу других CSS / HTML для простоты. Проблема в том, что все столбцы отображаются одинаковым оранжевым цветом в Internet Explorer 6, отлично работает в Firefox .

Как мне заставить это работать?

Ответы [ 2 ]

5 голосов
/ 06 января 2010

Это ошибка в IE6.

Если у вас есть селектор CSS с несколькими именами классов (например, .three.read), IE6 будет игнорировать все имена классов, кроме последнего.

Следовательно, IE6 видит три CSS-правила для селектора table td.read.

Чтобы решить эту проблему, вы можете объединить свои классы. (например, <td class='OneRead'> и table td.OneRead {background-color:#FFD700;})

1 голос
/ 06 января 2010

Несколько классов не поддерживаются в IE6, придется подождать еще несколько лет, прежде чем IE6 умрет. Пока что вы можете создавать отдельные классы для цветов.

...