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

xhtml|浏览器|问题

  今天我在做多页面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"; 这样的方式隐藏!

时间: 2024-10-28 00:44:37

XHTML:非IE浏览器里对style.height赋值无效的问题的相关文章

ie7中 iframe.style.height=&quot;100%&quot; 无效解决方法

ie7中 iframe.style.height="100%" 无效解决方法 100%高度的iframe在ie7中显示错误,原因是iframe.style.height="100%".       1.设置iframe父容器的高度值,100%就能生效(由此猜测默认情况下iframe的父容器高度是某个比较小的值,因此显示出来高度比较小)       2.如果是脚本动态创建的,iframe.style.height=document.body.scrollheight

非IE浏览器实现onmouseenter

每次遇到onmouseover事件的处理就头疼.比如父标签A里面嵌套了两个子标签,分别为标签A1和A2.假设你在父标签A上绑定了mouseover事件,理想的状态应该是:当鼠标从A标签外移到A标签上,事件触发. 但实际情况是,在以下几种情况下,mouseover事件都会被触发,下图为mouseover事件触发示意图(mouseout事件类似). 当鼠标从A标签外移到A标签上. 当鼠标从父标签A移入子标签B(或C). 当鼠标从子标签B移入子标签C(假设间距足够小的话). 之前一直是通过在事件处理函

静态图片的十一种滤镜效果--不支持Ie7及非IE浏览器。_图象特效

请新建文件TestImage.html 注意:静态图片的十一种滤镜效果--不支持Ie7及非IE浏览器.欢迎与邀月交流,net技术与软件架构内容如下,(可自行修改): 复制代码 代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmln

在火狐浏览器里鼠标事件没反应

问题描述 最近做一个相册功能,将一个相册的所有图片取出来,缩入成小图放在DIV里,用鼠标移到小图上在另一个DIV显示.用到鼠标的onMouseOver事件,在IE里可以调用这个事件的方法并执行,但在火狐浏览器里却没用了,别一个页面用这样的方法却没问题.jsp页面代码如下:图片显示代码<c:forEach var="pic" begin="0" end="0" items="${requestScope.album.picEns}&

微信浏览器里checkbox不能设置大小

问题描述 微信浏览器里checkbox不能设置大小 我做的一个页面中有大量的CheckBox复选框,我设置了css样式为width:20%,height:20%,在大部分浏览器中都可以正常显示,只有在微信浏览器中,显示出来的是原始大小. 请问各位前辈怎么在微信浏览器中设置checkbox的大小 解决方案 http://www.oschina.net/question/2343203_240653?sort=time 解决方案二: 这个问题我也遇到了,楼主解决了吗? 求指导啊

Docker 实现浏览器里开发Android应用的功能_docker

在浏览器里开发Android应用          这里需要用到Docker的知识, Che 发布后对Android应用开发多了一个工具,这里就对如何实现该功能就行详细介绍:                                                                    Eclipse Che 最近Che发布了正式版,那我就介绍下在Che上开发Android吧-- 使用Che需要懂得一些Docker的知识,只需要一点点即可,因为Che是基于Docker的,所

非IE浏览器下让界面变灰色

    今天哀悼日,大家先默哀一分钟~~~~     按照惯例,网页都得变灰色,IE下可以用下面的CSS解决:   html { filter:progid:DXImageTransform.Microsoft.BasicImage(grayscale=1); }     但是非IE浏览器无效,群里有个朋友发了个网址,是E文的,上面写着如何在非IE浏览器下页面变灰色,是用JS来解决的,网址如下:http://james.padolsey.com/javascript/grayscaling-in

ajax如何处理火狐浏览器或其它非ie浏览器的兼容性

如果选择的浏览器不是 Internet Explorer,或者为非 Microsoft 浏览器编写代码,就需要使用不同的代码.事实上就是 清单 1 所示的一行简单代码: var xmlHttp = new XMLHttpRequest object;. 这行简单得多的代码在 Mozilla.Firefox.Safari.Opera 以及基本上所有以任何形式或方式支持 Ajax 的非 Microsoft 浏览器中,创建了XMLHttpRequest对象. 结合起来 关键是要支持所有浏览器.谁愿意编

IE 和非IE浏览器的条件注释

浏览器|条件 (X)HTML 下面一段代码是测试在微软的IE浏览器下的条件注释语句的效果 <!--[if IE]><h1>您正在使用IE浏览器</h1><![endif]--><!--[if IE 5]><h1>版本 5</h1><![endif]--><!--[if IE 5.0]><h1>版本 5.0</h1><![endif]--><!--[if IE