让你的DIV位于在下拉框的上面
来源:互联网 发布:论文代笔淘宝上怎么搜 编辑:程序博客网 时间:2024/05/01 20:34
我们在作B/S开发的时候经常会遇到DIV层被下拉框遮挡的时候,这让我们很苦恼。无论我们怎么设置css样式都无济于事,因为select元素的优先级要比div高。所以我们就要选用比select元素优先级还要高的元素来遮挡它。这时候我们想到了iframe。我们可以在div里加上iframe来实现这种效果。
其实网上有很多类似的代码。但是iframe的大小设置是个问题,要做到和div的大小一样比较困难,这里展示一点小技巧。
就是用parentNode。具体的代码如下:
在div之间加入
document.writeln('<iframe src="" frameborder="0" style="position:absolute; visibility:inherit; top:0px; left:0px; width:expression(this.parentNode.offsetWidth); height:expression(this.parentNode.offsetHeight); z-index:-1;"></iframe> ');
我们可以看到在设置style 的时候width:expression(this.parentNode.offsetWidth);表达式的方式。this.parentNode.offsetWidth就代表div的宽度
offsetParent直接的将是影响元素位置的上级element,而parentElement与位置显示无关时dom中的上级element。
例如:
<BODY>
<div style="border: 1px solid black;position:absolute;">
<form>
<input type="checkbox" id="cc">
</form>
</div>
这个例子中,“cc”元素的offsetParent是div,如果去掉div的position属性,那么cc的offsetParent就会变为body。而parentElement一直都为form。
与此相关的还有offsetLeft和offsetTop两种属性,他们分别表示的是元素与offsetElement相对应的左侧和顶部距离。
parentNode和parentElement功能一样,childNodes和children功能一样。但是parentNode和childNodes是符合W3C标准的,可以说比较通用。而另外两个只是IE支持,不是标准,Firefox就不支持
- 让你的DIV位于在下拉框的上面
- 让你的DIV位于在下拉框的上面
- 如何让某一个窗口位于所有的窗口最上面
- 一段永远让div位于页面底部的css代码
- Flash始终位于最上层的解决方法(让FLASH对象位于DIV层之下)
- Flash始终位于最上层的解决方法(让FLASH对象位于DIV层之下)
- 让swfobject.js 支持透明的flash,即让悬浮的div能够位于flash之上
- UIButton 设置 button上面的图片在上面,title在下面
- 让你的div 按轨迹运动
- 在下拉列表框中显示多列的两种简易实现方式
- 如何清除windows的密码保存功能在下拉框中的密码
- 在下拉列表框里显示datastore里的服务内容
- 在下拉选择框中添加某张表里的动态数据
- 三个DIV位于一行的问题
- 设置div位于浏览器窗口的center
- 如何让浮动的div层显示在select组件的上面
- 如何让浮动的div层显示在select组件的上面
- 让Bootstrap3的菜单位于Iframe之上
- mplayer full screen
- 使用Eclipse远程调试Java web应用
- 八路AD采集电压表
- 第一次面试
- ORACLE冷备份及恢复
- 让你的DIV位于在下拉框的上面
- 手把手教你如何在XP上建立VPN服务器
- 什么是存储过程
- 周立功写给学单片机的年轻人
- WinForm中Component Class、User Control及Custom Control的区别和使用
- 网络游戏服务器开发::学习了两天python写了一个linux下自动安装程序的脚本
- 15 个 JavaScript Web UI 库
- csdn发表文章
- (win7)SQL SERVER 2005开发版 安装错误:无法找到产品Microsoft SQL Server Native Client的安装程序包,尝试再次使用的安装包 ' Sqlncli.ms