CSS Padding вложенной таблицы игнорируется Opera

Я использую таблицу, вложенную в таблицу, которая имеет свойство border-collapse:collapse;. Проблема в свойстве padding вложенной таблицы, которое Opera игнорирует.

Чтобы сделать его максимально простым, с помощью следующего HTML-кода...:

<table style="border-collapse:collapse;">
    <tr>
        <td>
            <table style="padding:3em;">
                <tr><td>ABCDE</td></tr>
            </table>
        </td>
    </tr>
</table>

... свойство padding игнорируется Opera, тогда как Firefox, Chrome и Safari учитывают его при рендеринге.

У меня вопрос: кто из них прав? Должен ли я оставить это так и игнорировать пользователей Opera или поискать другой способ установить отступы, потому что Opera правильно использует синтаксис?


person Socce    schedule 29.07.2010    source источник


Ответы (1)


В вашем случае я бы просто поместил отступ в содержащий <TD>. Если вы хотите оставить это на столе и игнорировать пользователей Opera, вы не оттолкнете огромную часть пользователей Интернета, хотя некоторые, несомненно, будут раздражены.

person Robusto    schedule 29.07.2010
comment
Спасибо за ваш ответ. Дело в том, что я не могу изменить код содержимого: я пытаюсь закодировать вложенную таблицу, чтобы она отображалась правильно при включении в таблицу с границей коллапса: коллапс; свойство. Я знаю, что пользователей Opera не так уж много, но это неправильное отображение только для Opera беспокоило меня, потому что я думал, что Opera был браузером, наиболее соответствующим стандартам: поэтому мне интересно, не является ли это ошибкой кодирования в большей степени, чем неправильное отображение Opera ... Мой вопрос остается: какой браузер подходит? что должно отображаться с этим кодом? - person Socce; 30.07.2010
comment
Лично я никогда не добавляю отступы к элементу таблицы. Вы можете попробовать заменить margin на padding. Дело в том, что спецификации CSS открыты для интерпретации, и разные браузеры делают разные вещи. Дело не в том, что Opera неверна; остальные просто другие. - person Robusto; 30.07.2010
comment
Если я вас правильно понял, не существует определенного правильного рендеринга этого HTML-кода, и у Opera могут быть свои причины полагать, что border-collapse:collapse; свойство должно сделать недействительным заполнение вложенной таблицы (а также это может быть ошибкой). Поэтому я должен использовать другое и менее двусмысленное описание CSS, если я хочу убедиться, что рендеринг будет одинаковым в разных браузерах. Что ж, если я правильно понял, спасибо за разъяснения! - person Socce; 01.08.2010
comment
Примечание. Я подтвердил этот ответ как принятый ответ, но это комментарий Робусто (отвечающий на мой), а не его первоначальный ответ, который ответил на мой вопрос. - person Socce; 01.08.2010