Internet Explorer和Firefox将内联CSS转换为奇怪的东西

Mac*_*ack 1 html javascript css inline

我有一些HTML,我使用JavaScript插入到div中.但它将内联CSS转换为奇怪的东西.例如,如果我在div中放入以下HTML(使用document.getElementById("element").innerHTML = ...):

<td valign=top style= border: 0; padding: 0;>
Run Code Online (Sandbox Code Playgroud)

当我看到div元素中的实际内容(使用FireBug)时,它就是这样的:

<TD vAlign=top 0; padding:>
Run Code Online (Sandbox Code Playgroud)

这是我以某种方式导致这个错误吗?当你使用javascript将一些带内联CSS的HTML插入div时,你会发现这种情况发生了吗?任何信息都会非常有用

Dav*_*ang 5

属性值必须包含引号:

<td valign="top" style="border: 0; padding: 0;">
Run Code Online (Sandbox Code Playgroud)

此外,由于此HTML在Javascript中作为字符串嵌入,因此请小心引号.我建议使用单引号(')来开始/结束Javascript字符串,并使用双引号(")来开始/结束属性值:

document.getElementById('element').innerHTML =
    '<td valign="top" style="border: 0; padding: 0;">';
Run Code Online (Sandbox Code Playgroud)