web标准下FF与IE对表格边框和宽度的不同解析测试

<?xml version="1.0" encoding="gb2312"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Language" content="zh-cn" /> <meta http-equiv="Content-Type" content="text/html; charset=gb2312" /> </head> <body> <p style="font-weight:bold;">--table--</p> <p>separate,表格边框包含在 width 中。</p> <table cellspacing="0" cellpadding="0" style="width:100px;border:10px solid red;border-collapse:separate;"> <tr> <td> </td> </tr> </table> <table cellspacing="0" cellpadding="0" style="border-collapse:collapse;"> <tr> <td style="width:100px;background-color:#999900;color:white;text-align:center;">100px</td> </tr> </table> <p>collapse,表格边框被平均分为“内边框”、“外边框”,“内边框”包含在 width 中,“外边框”不包含在 width 中,“外边框”不占 空间。</p> <table cellspacing="0" cellpadding="0" style="width:100px;border:10px solid red;border-collapse:collapse;"> <tr> <td> </td> </tr> </table> <table cellspacing="0" cellpadding="0" style="border-collapse:collapse;"> <tr> <td style="width:5px;background-color:#009900;"></td> <td style="width:90px;background-color:#999900;color:white;text-align:center;">90px</td> <td style="width:5px;background-color:#009900;"></td> </tr> </table> <p>collapse,当边框无法平均分为两份时,左边框的“外边框”等于“内边框”加 1,右边框则相反。</p> <table cellspacing="0" cellpadding="0" style="width:100px;border:1px solid red;border-collapse:collapse;"> <tr> <td> </td> </tr> </table> <table cellspacing="0" cellpadding="0" style="border-collapse:collapse;"> <tr> <td style="width:0px;background-color:#009900;"></td> <td style="width:99px;background-color:#999900;color:white;text-align:center;">99px</td> <td style="width:1px;background-color:#009900;"></td> </tr> </table> <p style="font-weight:bold;">--td--</p> <p>collapse,未指定 table 宽度时,td 的边框不占用 td 的 width。</p> <table cellspacing="0" cellpadding="0" style="border-collapse:collapse;"> <tr> <td style="width:100px;border:1px solid red;"> </td> <td style="width:100px;border:1px solid red;"> </td> </tr> </table> <table cellspacing="0" cellpadding="0" style="border-collapse:collapse;"> <tr> <td style="width:100px;background-color:#999900;color:white;text-align:center;">100px</td> <td style="width:1px;background-color:#009900;"></td> <td style="width:100px;background-color:#999900;color:white;text-align:center;">100px</td> </tr> </table> <p>collapse,指定 table 宽度时,td 边框的解释同 table。</p> <table cellspacing="0" cellpadding="0" style="width:200px;border-collapse:collapse;"> <tr> <td style="width:100px;border:1px solid red;"> </td> <td style="width:100px;border:1px solid red;"> </td> </tr> </table> <table cellspacing="0" cellpadding="0" style="border-collapse:collapse;"> <tr> <td style="width:99px;background-color:#999900;color:white;text-align:center;">99px</td> <td style="width:1px;background-color:#009900;"></td> <td style="width:99px;background-color:#999900;color:white;text-align:center;">99px</td> <td style="width:1px;background-color:#009900;"></td> </tr> </table> </body> </html>
  [Ctrl+A 全部选择 提示:你可先修改部分代码,再按运行]

注意:本实例主要适用于FF。

*table 与 td 边框重叠问题*

在样式表中同时为table标签和td标签指定边框,边框是否重叠取决于border-collapse属性。例如:

ContractedBlock.gif ExpandedBlockStart.gif Code
<table>
  
<tr>
    
<td>
    
<table style="border:1px solid red;">
  
<tr>
    
<td style="border:1px solid blue;">&nbsp;</td>
    
<td style="border:1px solid blue;">&nbsp;</td>
    
<td style="border:1px solid blue;">&nbsp;</td>
    
<td style="border:1px solid blue;">&nbsp;</td>
  
</tr>
</table>
    
    
</td>
    
<td>
    
<table style="border:1px solid red;border-collapse:collapse;">
  
<tr>
    
<td style="border:1px solid blue;">&nbsp;</td>
    
<td style="border:1px solid blue;">&nbsp;</td>
    
<td style="border:1px solid blue;">&nbsp;</td>
    
<td style="border:1px solid blue;">&nbsp;</td>
  
</tr>
</table>
    
    
</td>
  
</tr>
</table>

 

FF 结果如下:

table 与 td 边框重叠问题

  • 左边是未指定 border-collapse 的(默认为 separate)。
  • 右边是指定了 border-collapse 为 collapse 的。

IE 结果如下:

IE 中 table 与 td 边框重叠问题

  • 左边是未指定 border-collapse 的(默认为 separate)。
  • 右边是指定了 border-collapse 为 collapse 的。

兼容性

可以看出在发生重叠时,Firefox 是用 td 覆盖 table 的,而 IE 是用 table 覆盖 td 的。

转载于:https://www.cnblogs.com/color-fever/archive/2008/10/13/1310147.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值