meizz的专栏

梅花雪·疏影横斜

原创 XHTML:非IE浏览器里对style.height赋值无效的问题收藏

新一篇: IE样式的expression与XML数据岛绑定有点冲突 | 旧一篇: JavaScript应用:Iframe自适应其加载的内容高度

今天我在做多页面MDI脚本控件(MzMultiPage),在IE等浏览器里都已经测试通过没有任何问题,但是在Mozilla、Firefox、Netscape里测试时问题就来了,我的多页面是在页面里用到了 iframe,这些 iframe 初始的 style.height 都是0,而在加载页面之后,iframe 就会自适应被加载的页面高度,我是通过 iframe.style.height=300 这样撑起 iframe 的高度,这样处理在IE系列浏览器里没有任何问题,但在非IE浏览器里死活行不通,通过跟踪,发现根本没有把这个 300 赋给 style.height,最后测试出来竟然必须给定赋值的单位,即 iframe.style.height="300px",这样赋值才有效,没有单位的赋值无效,郁闷了我老半天!

说明一下环境:我用的是XHTML的DTD,即在页面头上是:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">,也正是因为这个 XHTML1.dtd 才导致非IE浏览器里的 style.height 有问题。

另外透露一点知识:在Netsacpe里的iframe,若通过设置 style.display="none" 隐藏这个 iframe 的话,会把通过脚本动态写入到 iframe 的HTML“冲掉”。所以在 Netscape 里的 iframe 若有脚本写入HTML又需要动态隐藏/显示这个 iframe 的操作时建议你使用 style.width="0px"  style.height="0px"; 这样的方式隐藏!

发表于 @ 2006年04月05日 23:37:00|评论(loading...)|编辑

新一篇: IE样式的expression与XML数据岛绑定有点冲突 | 旧一篇: JavaScript应用:Iframe自适应其加载的内容高度

评论

#阿信 发表于2006-08-20 04:31:00  IP: 219.136.124.*
opera还有点不同的
#有事情相求!!!! 发表于2006-09-21 17:11:00  IP: 222.33.142.*
在网络上找到你写的一个多极目录树!
急需一份,能否给一份!
我的邮箱:beijilengren@126.com
非常需要,谢谢!
我拷贝你的那段代码后有不能加载的问题。
为什么jsframework.js加载不进来!
所以希望能发一份到我的邮箱!谢先!
借个地界发个求助!不好意思!占地方了!
#有事情相求! 发表于2006-09-21 17:14:00  IP: 222.33.142.*
在网络上找到你写的一个多极目录树!
急需一份,能否给一份!
我的邮箱:beijilengren@126.com
非常需要,谢谢!
我拷贝你的那段代码后有不能加载的问题。
为什么jsframework.js加载不进来!
所以希望能发一份到我的邮箱!谢先!
借个地界发个求助!不好意思!占地方了!
#gzty 发表于2007-06-18 09:45:32  IP: 222.85.151.*
style.display="none" 隐藏这个 iframe 的话,会把通过脚本动态写入到 iframe 的HTML“冲掉”。

谢谢老梅.......

嘿嘿
#muxrwc 发表于2007-08-24 11:49:25  IP: 61.49.106.*
哈哈,偶第一次加DTD的时候也调了老半天才发现是单位问题。。。
发表评论  


当前用户设置只有注册用户才能发表评论。如果你没有登录,请点击登录
Csdn Blog version 3.1a
Copyright © meizz