设置边框到表tr,适用于除IE 6和&之外的所有内容。 7

时间:2009-02-24 20:51:16

标签: html css html-table

我将表event_calendar tr的边框设置为红色,它适用于除IE 6和&之外的所有内容。 7.我的CSS有什么问题?

table#event_calendar tr {
    border:1px solid red;
}

<div class="content-body">
<table id="event_calendar">
    <tr class="calendarHeader">
        <th><div class="calendarMonthLinks"><a href="http://webdev.herkimer.edu/calendar/2009/03/">&lt;&lt;</a></div></th>
        <th colspan="5"><h1>April 2009</h1></th>
        <th><div class="calendarMonthLinks"><a class="calendarMonthLinks" href="http://webdev.herkimer.edu/calendar/2009/05/">&gt;&gt;</a></div></th>
    </tr>
    <tr>
        <td class="calendarDayHeading">Sunday</td>
        <td class="calendarDayHeading">Monday</td>
        <td class="calendarDayHeading">Tuesday</td>
        <td class="calendarDayHeading">Wednesday</td>
        <td class="calendarDayHeading">Thursday</td>
        <td class="calendarDayHeading">Friday</td>
        <td class="calendarDayHeading">Saturday</td>
    </tr>
</table>
</div>

4 个答案:

答案 0 :(得分:54)

IE不尊重&lt; tr&gt;的边框属性标签。但是,有一些解决方法是在每个单元格周围放置一个顶部和底部边框,并使用“border-collapse:collapse;”所以细胞之间没有空间。关于确切的方法,我会参考this resource here,但对于你来说它基本上就是这样(我自己没有测试过,所以我不确定这是否完全正确,但我认为你可以重复在它上面。)

table#event_calendar {
    border-collapse: collapse;
    border-right: 1px solid red;
    border-left: 1px solid red;
}

table#event_calendar td, table#event_calendar th {
    border-top: 1px solid red;
    border-bottom: 1px solid red;
}

答案 1 :(得分:7)

你的CSS足够明智,但IE只是不对tr元素进行边界处理。如果你使用这种风格,你应该得到预期的结果:

table#event_calendar {
    border-top:1px solid red;
    border-right:1px solid red;
    border-left:1px solid red;
    border-collapse:collapse;
}

table#event_calendar td, table#event_calendar th {
    border-bottom:1px solid red;

}

答案 2 :(得分:4)

在td上设置边框是最简单的解决方案。但如果你真的想在<tr>上制作边框,你可以随时设置:

tr { display:block; border-bottom:1px dotted #F00; }

通过执行此操作,您将松开<td>之间的公共宽度。如果您想使所有广告在宽度上相等,请将<td>的显示设置为inline-block并设置一些宽度:

td { display:inline-block; width:20%; }

如果您想在<td><tr>上绘制一些边框,这会有所帮助。

CSS生成的内容(如tr:before{}tr:after{})也可以提供帮助。

答案 3 :(得分:0)

将您的CSS选择器更改为“table#event_calendar tr td ”,它应该可以正常工作。