写table时一些bug

本文详细探讨了在不同浏览器环境下表格布局的兼容性问题,特别是针对IE6-IE7的特殊挑战。包括表格元素的限制、样式属性的不支持以及动态插入元素的异常行为等。提出了使用原生表格单元格(<td>)作为解决方案,并分享了一个关于动态插入元素导致样式丢失的bug案例。
摘要由CSDN通过智能技术生成

表格时要注意的几点:(着重ie6-ie7不兼容问题)

在一些支持标准dom浏览器中,表格可以像div一样,肆意设置样式。但是ie6-ie7何止有问题,简直是问题重重:

 

1.table是个排外的货。table不支持直接放置<span><div>标签.在众浏览器下均如此

偶遇一问题。发现直接在table里面直接加<span>标签或者<div>是不可以的。运行的时候<span><div>会带着里面的内容私奔到整个table的前面。

呀嘿,之前真没注意到还有这些个问题。

网上找了一轮也没见个解决方法。结论,还是用原生的<td>比较靠谱。

 

2.在<tr>不支持position:relative;在众浏览器下均如此

在<table>没有设置任务position:relative;的时候。在<td>标签内用position:absolute是相对于浏览器窗口的。

谷歌之后暂无方!

 

3.在<tr>不支持margin,padding.而<td>不支持margin。ie6-7

在<td>里面的元素(img)设置margin-bottom也是不管事的。

 

4.<tr>不支持设置border。ie6-7

当我试图为<tr>标签设置边框美化一下,谁想遭到了ie6-7的强烈反对。我非常愤怒,最终决定,在<td>下设置比较妥当

 

5.如果<table>里的的<td>宽度都是以第一个<tr>标签里的<td>为标准的。如果第一行的<td>没有设置宽度,第二行即使设置也不会起作用。它会变成自动的了

 

 

/*补充于2013.5.29今天 又遇到一个惊 天bug!

次奥,用append动态把div A插入在table里。在ie8以更早版本,都会不认识A原来的样式。更好的方法,是在table外加一层div B,把A append在B里面。

这个我已经不记得是啥问题了。现在也想不起来,先留着。但是感觉那时幼稚的我,说的应该是同个问题。table排外。

*/

 

转载于:https://www.cnblogs.com/ihqn19/archive/2012/07/27/2612082.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值