日期:2014-05-16  浏览次数:20346 次

为什么Table中凭空多出来了Tbody节点?

<div id="testDiv">

</div>





var t = "<table><tr><td>123</td><td>123</td><td>123</td><td>123</td></tr><tr><td>123</td><td>123</td><td>123</td><td>123</td></tr><tr><td>123</td><td>123</td><td>123</td><td>123</td></tr></table>";
document.getElementById("testDiv").innerHTML=t;
alert(document.getElementById("testDiv").innerHTML);



请大家测试一下   我插入的时候明明是没有tbody节点的。。为什么插入之后用alert输出,却发现多出来了tbody节点了呢。怎么样才能不要tbody节点 ,因为我在页面中加入
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 后不支持tbody节点,这样我的css就失效了
js html innerHTML tbody table

------解决方案--------------------
改写css
不要告诉我 多了一层就不能写css了
------解决方案--------------------
浏览器自己加的,理论上来说是不会有什么影响的

至于你说的CSS失效,我怎么没有遇到过,帖一点相关的CSS样式出来看看
------解决方案--------------------
firefox 看的?

自己添加的。显得更为规范。
------解决方案--------------------
table结构本身就应该有tbody  你不加的话浏览器会自动加上的  
对于ie7最好自己加上  否则通过appendChild添加tr时会无效
------解决方案--------------------

------解决方案--------------------
如同4楼所说,本来就应该有的,这是结构之一,你想要去掉,你认为合理么~
------解决方案--------------------
table 的标准结构