职业IT人-IT人生活圈

 找回密码
 成为会员
搜索
查看: 352|回复: 1

IE7、IE8 对于W3C标准 tbody 的兼容问题

[复制链接]
已经来了吗 发表于 2011-8-25 10:03 | 显示全部楼层 |阅读模式
[size=medi......
推荐链接 见证又一个......


[size=medium]最近在处理静态化模板的时候,动态生成右上角登录框,出现了IE7无法显示的问题。
在IE7中一闪而过。
但是在IE8、firefox、chrome 中都能正常显示。
源码如下(涉及商业问题,略作修改):
Java代码  
//登录html   
function DLH(loginName){   
    var dengl = "";   
    dengl+='<tr>';   
    dengl+='    <td>您好,'+loginName+' 【<a href="javascript:logout();">退出登录</a>】【<a href="userM.html">我的组织</a>】&nbsp;<a href="#">帮助</a></td>';   
    dengl+='</tr></tbody>';   
    return dengl;   
}  

//登录html
function DLH(loginName){
        var dengl = "";
           dengl+='<tr>';
    dengl+='    <td>您好,'+loginName+' 【<a href="javascript:logout();">退出登录</a>】【<a href="userM.html">我的组织</a>】&nbsp;<a href="#">帮助</a></td>';
    dengl+='</tr></tbody>';
    return dengl;
}


之后发现此源码并不是很规范,没有严格执行W3C标准,才会出现以上不兼容问题!
更改的地方其实很简单,就是增加 <tbody>

修改后如下:
//登录html
function DLH(loginName){
var dengl = "";
   dengl+='<tbody><tr>';
    dengl+='    <td>您好,'+loginName+' 【<a href="javascript:logout();">退出登录</a>】【<a href="userM.html">我的人脉</a>】&nbsp;<a href="#">帮助</a></td>';
    dengl+='</tr></tbody>';
    return dengl;
}

之后经过询问高人,明白了<thead> <tbody> <tfoot>的好处。

总结如下:
<table>
<thead><tr>...</tr></thead>
<tbody><tr>...</tr></tbody>
<tfoot><tr>...</tr></tfoot>
</table>
当然没有必要全都用到,但是必须记住的是如果有thead或tfoot,就必须要tbody。

加了tbody后准确来说并不是影响下载速度,而是呈现速度。

浏览器对Table的解释是等待整个table全部加载完才显示。
如果加入tbody,浏览器则一边下载一边显示已经下载的内容。


能文能武 发表于 2011-8-25 10:04 | 显示全部楼层
推荐链接
见证又一个准百万富翁的诞生!

20-30万急聘多名天才Java/MTA软件工程师
3G培训就业月薪平均7K+,不3K就业不花一分钱!

您需要登录后才可以回帖 登录 | 成为会员

本版积分规则

QQ|手机版|小黑屋|网站帮助|职业IT人-IT人生活圈 ( 粤ICP备12053935号-1 )|网站地图
本站文章版权归原发布者及原出处所有。内容为作者个人观点,并不代表本站赞同其观点和对其真实性负责,本站只提供参考并不构成任何投资及应用建议。本站是信息平台,网站上部分文章为转载,并不用于任何商业目的,我们已经尽可能的对作者和来源进行了通告,但是能力有限或疏忽造成漏登,请及时联系我们,我们将根据著作权人的要求立即更正或者删除有关内容。

GMT+8, 2024-4-20 08:50 , Processed in 0.136166 second(s), 20 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表