边界仍然显示,为什么?

时间:2012-04-23 08:36:19

标签: html css css3

我在桌面上有一个奇怪的问题...我在css中将边框设置为0,我将边框颜色设置为透明,但是,在浏览器中,它仍显示边框在顶部和左侧,这没有任何意义......

该表格类似于<table cellspacing="0" style="border-width:0px;border-collapse:collapse;" id="gvTransactions" pagersettings="" rules="all" class="transaction-posts">

css看起来像:

table.transaction-posts, table#gvTransactions {
  border: 0 none transparent !important;
  border-radius: 0 0 0 0;
}

正如您所看到的,即使我将边框设置为0,它仍会在顶部,左侧和每行输出黑色边框...

enter image description here

2 个答案:

答案 0 :(得分:0)

在表格标签中...添加border =“0”...如果这不起作用,那么检查是否有任何css覆盖它,也将你的代码发布在jsfiddle中。

答案 1 :(得分:0)

rules="all"标记中的HTML属性table会导致在所有单元格的所有边上绘制边框。 HTML 4.01规范有点含糊地说,但这就是浏览器解释它的方式。因此,如果您不想要任何边框,请删除该属性。

如果你想拥有一些边框但不是全部,你需要适当地设置它们。例如,如果最顶部和最左边的边界是问题(这是对问题的一种解释),那么设置

table#gvTransactions tr:first-child th, table#gvTransactions tr:first-child td {
  border-top: none;
}
table#gvTransactions th:first-child, table#gvTransactions td:first-child {
  border-left: none;
}

第一条规则删除第一行中任何单元格的顶部边框。第二个删除任何单元格的左边界,该单元格是其父级的第一个子级,即第一列中的单元格。