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

html-css037

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~~如果你的A表格是边框1~B也是1~那你在B的样式里面加入margin-top:-1px~就可以了margin-top:-1px的意思是忘上1个像素~~

写第二列的宽度等于table的宽度减去第一列的宽度,需要用js控制获得两个元素的宽,相减后的结果是第二列元素宽度属性的值。但是这样做很麻烦。

建议你把图片和文字分别放在两个span标签里,这样就可以不用定义宽度了