css怎么解决表格边框线重复问题.

html-css020

css怎么解决表格边框线重复问题.,第1张

1、td 的边框和table 的边框重叠

.table { border-left:1px solid #dededeborder-top:1px solid #dedede}

.td { border-right:1px solid #dededeborder-bottom:1px solid #dedede}

table 只用左边框和上边框,每个td只有右边框和下边框,效果就是整个表格左、上边框是连续实线,右、下边框是延续td的边框所以是断断续续的

解决方法:

.table {border:1px solid #dededeborder-collapse:collapse}

.td {border:1px solid #dedede} 橘色字体是关键,边框设置也不用分上下左右了,重叠的话会一个覆盖另一个

firefox中:td的border覆盖table 的,IE中table 的border覆盖td的,我这里border颜色一样,无所谓了

表格线常见问题:

1.表格边框与表格单元格线的重叠。[采用border-collapse:collapse解决]

2.嵌套表格与被嵌套表格边线重叠问题。[采用border-top|left|right|bottom解决]

3.嵌套表格与被嵌套表格对不齐的问题。[采用table-layout: fixed解决]

4.border-collapse有两个属性,separate 和 collapse 。

separate是默认属性,表格边框默认有1px 的间隙,在表格排版时代,设置好表格背景色,我们曾用它来挤出版块的外边框;

collapse,是将表格边框的间隙去掉,这样给表格的td边框赋值时就不会产生双线框了。

Demo:没有设置collapse属性的双线表格

如果是表格,可以通过border-collapse: collapse来让线重合;

如果是div之类的非表格标签,要么用外间距(margin)分开,要么设置边的时候只设置一个方向,比如border-left

可以通过设置一下边框宽度来解决不能重合的问题。

像这样的带边框div的一定要计算很精准:

总宽度=div宽度+左边框宽度+右边框宽度(只要有边框的div都要计算边框的宽度)

上图中CSS并没有指定边框是多宽的,建议也指定定义好的宽度数值,再计算一下整体宽度是多少,这样应该就可以将边框重合了。

如果还不能重合,建议将完整代码截图发来。