1

我有一个为所有表格单元格设置边框的表格。这用于日历。当前日期的表格单元格包含一个更改该表格单元格背景颜色的 div。但是,在 Firefox 中查看时,它会覆盖(或覆盖 - 我不确定)表格右侧和底部的单元格边框。它覆盖了 Opera 中的顶部和左侧表格单元格边框。它在 Chrome 和 Safari 中运行良好。它尚未在 IE 中进行测试。如何在 Firefox 和 Opera 中显示所有边框?这是代码:

HTML:

<table class="calendar" frame="box" rules="none">
    <tr>
        <td></td>...//seven td's total
    </tr>
    <tr><td class="very_light_gray"><div class="calendar_day_wrap">Today</div></td>...</tr>
    .... // 5 or 6 table rows total
</table>

CSS:

.calendar {
    position:inherit;
    margin:auto;
    height:100%;
    width:100%;
    z-index:99999;
    border-collapse:collapse;
}

.calendar tr {
    height:20%;
    position:relative;
    z-index:2;
}

.calendar td {
    border:1px solid #ccc !important;
    width:14%;
    vertical-align: top;
    position:relative;
    z-index:2;
}

.calendar_day_wrap {
    position:relative;    
    width:100%;
    height:100%;
}

.very_light_gray {
    background-color:#F8F8F8 !important;
}
4

2 回答 2

1

您设置rules="none",它明确关闭列和行边界。

然后设置border-collapse:collapse,它使用列/行边框折叠单元格边框。对于每个边界段,都有一个列表,其中列出了哪些边界声明优先,并且“显式关闭”具有每个规范的最高优先级。

您想使用border-collapse: separate或不设置rules="none". 很有可能,你也不想要frame="box"

于 2012-06-29T01:45:11.277 回答
0

这段在 Opera 12.0 和 Firefox 中运行的代码怎么样?

.calendar {
    margin:auto;
    height:100%;
    width:100%;
    border-collapse:collapse;
    border:1px solid #ccc;}

.calendar tr {height:20%;}

.calendar tr:nth-child(1) td {
    border:1px solid #ccc;
    height:20%;}

.calendar td {
    width:14%;
    vertical-align: top;}

.calendar_day_wrap {
    width:100%;
    height:100%;}

.very_light_gray {
    background-color:#F8F8F8;}
于 2012-06-29T16:30:34.103 回答