Это просто разные реализации рисования границ. Вы заметите, что есть разница и в IE, и в Opera:
Я не тестировал Safari, но ожидал, что он будет выглядеть так же, как Chrome, поскольку они используют один и тот же механизм рендеринга.
Единственный способ, которым я могу придумать, чтобы получить согласованную границу между браузерами, это установить border-collapse
в separate
для элемента <table>
:
table {
border-collapse: separate;
}
Это, к сожалению, означает, что вам нужно решить новую проблему & mdash; теперь между каждой ячейкой будут границы 2x 10px
. Вы можете обойти это, изменив разметку или добавив дополнительные правила CSS. Например, я изменил CSS следующим образом:
table {
border-collapse: separate;
}
table td{
padding:10px;
background:#415DA1;
border-top:solid 10px #F00;
border-right:solid 5px #CCC;
border-bottom:solid 10px #F00;
border-left:solid 5px #CCC;
}
table td:first-child {
border-left-width: 10px;
}
table td:last-child {
border-right-width: 10px;
}
Демо: http://jsfiddle.net/AndyE/B2fjn/1/
Это дает настолько хороший результат, насколько вы, вероятно, ожидаете в современных браузерах, но не выглядит так хорошо в IE 6-8. Вам нужно будет экспериментировать, пока вы не получите наилучший возможный результат.