如何使这个表只有1像素边框?

时间:2012-08-09 17:46:10

标签: html css html-table

我有这张桌子:

image oftable

使用以下代码:

    <table border="1" id="comparativa">
        <tr>
            <td rowspan="2"></td>
            <td colspan="3" class="friuty">Fruity</td>
        </tr>
        <tr>
            <td class="lila">Intensed</td>
            <td class="lila">Medium</td>
            <td class="lila">Low</td>
        </tr>
        <tr>
            <td class="lila">Green</td>
            <td><img src="img/forsutpeque.png" /></td>
            <td><img src="img/donapeque.png" alt="" /></td>
            <td>-</td>
        </tr>
        <tr>
            <td class="lila">Mellow</td>
            <td>-</td>
            <td><img src="img/marpeque.png" alt="" /></td>
            <td>-</td>
        </tr>
        <tr>
            <td class="lila">Balanced</td>
            <td>-</td>
            <td><img src="img/cotxepeque.png" alt="" /></td>
            <td>-</td>
        </tr>
    </table>

和以下CSS

#comparativa { 
    width:350px; 
    font-size:1.2em; 
    border-spacing:0px; 
    border-collapse:separate; 
    empty-cells:hide !important; 
    border:0; 
}
#comparativa tr td { 
    padding:2px 4px; 
    border:#9f4dc2 solid 1px; 
    text-align:center; 
    width:88px; 
    color:#bdac77; 
}
#comparativa tr td.friuty { 
    background:#9f4dc2; 
    color:#fff; 
    text-transform:uppercase; 
}
#comparativa tr td.lila { 
    background:#ecdff3; 
    text-transform:uppercase;  
    color:#9f4dc2; 
    text-align:left; 
    padding-top:2px; 
    padding-bottom:4px; 
    padding-left:10px; 
}

我想让它的内边框宽度为1px,同时仍保持空左上角的单元格而不显示边框:

问题在于,如果我放border-collapse:collapse,那么左上角的行会显示其边框,即使是空单元格:hide ...

有什么建议吗?

3 个答案:

答案 0 :(得分:4)

您可以使用以下方法指定左上角单元格的覆盖样式:

#comparativa tr:first-child td:first-child { border-left: 0; border-top: 0; }

答案 1 :(得分:1)

喜欢这样吗?

http://jsfiddle.net/apJkX/

答案 2 :(得分:0)

尝试为表格单元格提供一个类,并将其border-width设置为0px。