我知道框架很糟糕。但是,我必须再坚持一段时间。我的问题来自“框架集”元素的非标准“边框”属性:
<frameset border="0">
...
</frameset>
如果我不使用该属性,浏览器会在每帧之间放置一个间隙。如果我使用该属性,HTML 验证器会抛出有关“不支持的属性”的错误。
现在我听到你说“使用它并忽略验证器”,这很好。我想我可以忍受一个验证器警告,而且浏览器似乎也不太担心:)
我的问题主要是关于 HTML 诡计。如何将边框设置为 0 并保持浏览器兼容?将此视为未来类似问题的练习。例如我试过:
<frameset onload="this.border='0'">
它没有用。
我尝试在内部框架中使用样式表来设置“border:0;margin:0;padding:0”,它也不起作用。差距似乎来自一个未知的来源。
我想过用 Javascript 编写,例如:
document.write('<frameset border="0">');
但我有一种预感,它无论如何都不会验证。
你能想出一个替代的解决方案吗?
其他不起作用的解决方案:
- @Donut:“frame”或“frameset”元素上的“frameborder”属性
- @kangax: frameSetObj.setAttribute('border', 0);