Я разработал красивую рамку стола с CSS и графикой. Он использует фрагменты фонового изображения для 3D-заголовка и простые CSS-границы для строк.
Проблема в том, что мне нужно выровнять границы по заголовкам, и это просто не будет работать согласованно в разных браузерах, хотя я не понимаю, почему нет.
В IE6 и IE7 все работает нормально
В IE8 и FF3.5 левый край выходит на один пиксель
В Chrome 10 правый край выходит на один пиксель
Кажется, что фоновое изображение не помещается полностью к краю ячеек заголовка, но трудно даже понять, какой браузер виноват. Любые предложения приветствуются.
Демонстрация проблемы по адресу:
http://www.songtricks.com/TableBug.html
Источник HTML / CSS ниже:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<style type="text/css">
table.demo
{
margin:0px;
padding:0px;
border-collapse:collapse;
}
table.demo tr
{
padding:0px;
border:none 0px transparent;
}
table.demo th
{
border:none 0px transparent;
border-bottom:solid 1px #cccccc;
padding:10px;
background:url(wfx_table_tm.gif) repeat-x left top;
}
table.demo th.left
{
padding:0px;
background:url(wfx_table_tl.gif) no-repeat left top;
}
table.demo th.right
{
padding:0;
background:url(wfx_table_tr.gif) no-repeat right top;
}
table.demo td
{
border:none 0px transparent;
border-right:solid 1px #dfdfdf;
border-bottom:solid 1px #cccccc;
padding:8px;
}
table.demo td.left
{
border-left:solid 1px #b1b1b1;
}
table.demo td.right
{
border-right:solid 1px #b1b1b1;
}
</style>
</head>
<body>
<table class="demo">
<tr>
<th class="left">Left</th>
<th>Center</th>
<th class="right">Right</th>
</tr><tr>
<td class="left">Left</td>
<td>Center</td>
<td class="right">Right</td>
</tr>
</table>
</body>
</html>