Object标签遮挡 Div显示

本文介绍了一种解决HTML中Object标签遮挡日期选择器的方法,通过在目标div内部添加一个设置为透明的iframe来实现层级覆盖,确保日期选择器可以正常显示。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

最近在使用日期选择器时,出现个问题,就是被播放视频的Object标签遮挡住,不能正常显示,纠结于此许久,得此良方。

<div id="demodiv" style="width: 120px; height:120px;DISPLAY: none; top: 26px; left: 300px;z-index:999999">
    <ul>
        <li>关闭</li>
        <li>刷新</li>
        <li>关闭其他</li>
        <li>关闭全部</li>
    </ul>
    <iframe id="iframe1" src="about:blank" frameBorder="0" marginHeight="0" marginWidth="0" style="position:absolute; visibility:inherit; top:0px;left:0px;width:120px; height:120px;z-index:-1; filter:alpha(opacity=0);"></iframe>
</div>

 

出现这种现象的原因:

        object标签不在dom文档流里面,浏览器在解析的时候先把object放置在最上层,然后依次解析dom文档,放在下层,并且在这里使用z-index是无效的。

 

说明一下:div为需显示的div,被object遮挡,于是在该div中增加一个iframe,通过iframe来遮挡Object控件标签。

因为iframe的级别高于Objec标签,而又由于div能够遮挡iframe,所以可以通过在div中加入iframe来解决该类问题。

        其中有几点需要注意:

1.div必须有特定的z-index且大于iframe的z-index,不能是auto或空;

2.iframe的z-index必须为负,否则,div无法遮盖iframe;

3.iframe的top和left为0,且iframe的宽、高与div的宽高相等刚好完全覆盖;

4.注意设置iframe的透明度为0.

5.iframe作为显示div的子元素添加在内。

评论 12
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值