关于border-collapse、border-style、cellspacing、cellpadding的一些看法

  • border-collapse
  • 表格 table
  • border-collapse 属性设置表格的边框是否被合并为一个单一的边框,还是像在标准的 HTML 中那样分开显示。

先放结论:

  1. 当不设置border-collapse时
    1. cellspacing=”30”
      外部边框和内部边框的距离
    2. cellpadding=”20”
      边框和内容的距离(padding)
    3. border-style: hidden 等价于 border-style:none 不显示边框
  2. border-collapse:collapse时
    1. 相邻边被合并(外部边框和内部边框被合并)
    2. border-style: hidden 优先级最高,只要一个边框设置了hidden,那最终结果就是不显示边框
    3. border-style: none 优先级最低,只有两个重合的边框都设置了none,才会不显示边框。

不设置border-collapse属性时

当我们写一个普通的表格的时候:

  <table width="200" border="1"><tr><td> td><td> td>tr><tr><td> td><td> td>tr>table>

样式为: 普通表格

在这里介绍两个属性: cellspacingcellpadding
cellspacing : 外部边框和内部边框的距离
cellpadding : 边框和内容的距离

cellspacing="10" cellpadding="20"时:
cellspacing=

再介绍一个属性: border-style: hidden 等价于 border-style:none 即 不显示边框

代码实验: 给左上和右下的边框分别用hidden和none设置了不显示边框,可以看到他们的效果是一样的

  <table width="200" border="1" cellspacing="10" cellpadding="20"><tr><td style="border-style: hidden"> td><td> td>tr><tr><td> td><td style="border-style: none"> td>tr>table>

此时的样式:
给第一个和第三个设置了不显示边框

border-collapse:collapse 时

此时的代码是这样的:

    <table width="200" border="1" cellspacing="10" cellpadding="20" style="border-collapse:collapse"><tr><td> td><td> td>tr><tr><td> td><td> td>tr>table>

此时的样式:
这里写图片描述

此时 cellspacing="10"的属性已经不起作用了 (cellpadding="20"还是起作用的)

我们现在再来对左上和右下的边框分别设置hidden和none:

<table width="200" border="1" cellspacing="10" cellpadding="20" style="border-collapse:collapse"><tr><td style="border-style: hidden"> td><td> td>tr><tr><td> td><td style="border-style: none"> td>tr>table>

再看此时的样式:
这里写图片描述
我们可以发现: 从效果上来开,只有border-style: hidden 起作用了
而如果我们在上面代码的基础上,同时对右下的框的上面的那条边也设置border-style: none
这里写图片描述
这条公共的边终于没有了。

小结论:
border-style: hidden ,只要一个边框设置了hidden,那最终结果就是不显示边框
border-style: none ,只有两个重合的边框都设置了none,才会不显示边框。


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部