html如何将一个div置于最上层

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了html如何将一个div置于最上层相关的知识,希望对你有一定的参考价值。

1、新建一个html文件,命名为test.html,用于讲解html如何将一个div置于最上层。

2、在test.html文件内,使用div标签创建两个模块,并分别设置它们的id为testone,testtwo。

3、在css标签内,统一设置div的样式,定义它们的位置属性为绝对定位,宽度和高度为300px。

4、在css标签内,设置id为testone的样式,定义其背景颜色为红色,同时使用z-index属性定义其为最上层。

 

5、在css标签内,设置id为testtwo的样式,定义其背景颜色为蓝色,距离左边和距离上边的位置为20px。

 

6、在浏览器打开test.html文件,查看实现的效果。

参考技术A

设置style 中 z-index:auto

auto可定义为一个值(整数数字),越大代表越置前,如可定义为: z-index:999。

若定义为-1,代表为最底层。

div的图层由div的style中的z-index来决定,z-index是层垂直屏幕的坐标,0最小,越大的话位置越靠上。

·测试效果:

<!DOCTYPE html>    
<html>    
<head>    
<meta charset="utf-8" />    
<title>div图层样式</title>    
<style>    
.div-relativeposition:relative; color:#000; border:1px solid #000; width:500px; height:400px    
.div-a position:absolute; left:30px; top:30px; background:#F00; width:200px; height:100px    
/* css注释说明: 背景为红色 */    
.div-b position:absolute; left:50px; top:60px; background:#FF0; width:400px; height:200px    
/* 背景为黄色 */    
.div-c position:absolute; left:80px; top:80px; background:#00F; width:300px; height:300px    
/* DIV背景颜色为蓝色 */    
</style>    
</head>    
<body>    
<div class="div-relative">    
<div class="div-a">我背景为红色</div>    
<div class="div-b">我背景为黄色</div>    
<div class="div-c">我背景为蓝色</div>    
</div>    
</body>    
</html>

2、页面中实现的效果如下:

参考技术B

设置style 中 z-index:auto

auto可定义为一个值(整数数字),越大代表越置前,如可定义为: z-index:999。若定义为-1,代表为最底层。div的图层由div的style中的z-index来决定,z-index是层垂直屏幕的坐标,0最小,越大的话位置越靠上。

给div的style添加z-index:9999,数值越大,越在最上面。如果是被flash遮住的,可以把flash的wmode设置为transparent 。

参考技术C 给div的style添加z-index:9999,数值越大,越在最上面
如果是被flash遮住的,可以把flash的wmode设置为transparent本回答被提问者和网友采纳
参考技术D

    把div设置成层,

    然后给层 添加 z-index:99999

    这里的数值9 最好是5位。

如何将 HTML 内容置于 Flash 影片之上?

【中文标题】如何将 HTML 内容置于 Flash 影片之上?【英文标题】:How do I place HTML content above a Flash movie? 【发布时间】:2010-09-12 12:26:46 【问题描述】:

我正在处理的网站有 Flash 标头(使用 swfobject 嵌入它们)。现在我需要编写一些应该与 Flash 电影重叠的 HTML。

我尝试在 Flash 元素的容器和(绝对定位的)div 上设置 z-index,但它一直在 Flash 电影后面“消失”。

我希望有一个 CSS 解决方案,但如果有一点 JS 魔法可以解决这个问题,我愿意。

更新:谢谢,将 wmode 设置为“透明”基本上修复了它。只有 Safari/Mac 在第一次展示时仍将 div 隐藏在 flash 后面。当我切换到另一个应用程序并返回时,它会在前面。我可以通过将 div 的初始样式设置为 display: none; 并在页面加载半秒后通过 JS 使其可见来解决此问题。

【问题讨论】:

你能不能把一个工作的例子放在一起,因为我有同样的问题,不能让它工作,很高兴看看是我还是我的浏览器.. 【参考方案1】:

确保 FlashVar“wmode”设置为“透明”或“不透明”,但不是默认设置,“窗口化”...然后您应该能够使用 CSS z-index

【讨论】:

wmode 就像埋在南美洲最深处丛林中的金色偶像。我记得我第一次听到这件事时欣喜若狂。 请记住,它不适用于 Linux 浏览器,除了 Flash 10 的测试版和最近的浏览器(Fx 3.0.0+、Opera 9.50+,不知道其他浏览器) 有多少 Linux 用户不让他们的浏览器和相关程序保持最新?这是一个精明的人口统计数据。 有相当大的一部分linux用户原则上也会运行flash/swf杀浏览器插件,所以我在开发时尽量不要太担心它们。 这些模式的区别:***.com/questions/886864/…【参考方案2】:

后续说明:正如您在更新中发现的那样,让 HTML 显示在 Flash 之上目前是一个挑剔的命题,即使使用您发现的 JS 魔法,您也应该期望 Flash 会在某些情况下屏蔽您的 HTML使用浏览器外、旧版本等的查看器。

如果覆盖任意大量的浏览受众对您很重要(例如移动设备),那么从长远来看,重新设计您的内容以避免重叠可能会让您头疼。

【讨论】:

你当然是对的。在这种情况下,客户并不关心,但总的来说这是合理的建议。 本例中的另一个问题是,有多少移动设备支持 Flash? iPhone,我敢肯定,也许是一些 Windows Mobile 智能手机,但在那之后呢? (另外,我不精通移动网络开发,所以我真的不知道......) 史蒂夫:打那个,倒过来!大多数现代智能手机都支持 Flash,但 iPhone 不支持。具体来说,大多数现代手机(即带有网络浏览器的手机)都有 Flash Lite,通常是 2.x 或 3.x 版本。 Flash Lite 2.x 与 Flash 6 大致相似,而 Lite 3.x 与 Flash 8 相似。【参考方案3】:

使用以下样式的代码,它适用于 Firefox 和 chrome

<object id='myId'  width='700' height='500'>
            <param name='movie' value='images/ann/$imagename' />
            <param name='wmode' value='transparent' />
            <!--[if !IE]>-->
            <object type='application/x-shockwave-flash' data='images/ann/$imagename' width='700' height='500' wmode='transparent'>
            <!--<![endif]-->
            <div>
                <h1>Please download flash player</h1>
                <p><a href='http://www.adobe.com/go/getflashplayer'><img src='http://www.adobe.com/images/shared/download_buttons/get_flash_player.gif' alt='Get Adobe Flash player' /></a></p>
            </div>
            <!--[if !IE]>-->
            </object>
            <!--<![endif]-->
        </object>

【讨论】:

【参考方案4】:

我想补充一点,您必须记住在 OBJECTEMBED 标签中设置 WMODE 参数(“透明”)!

点击链接了解详情: http://kb2.adobe.com/cps/142/tn_14201.html

【讨论】:

【参考方案5】:

就像 Steve Paulo 所说的那样,当你的 flash 顶部的 HTML 调用更多 flash 时,有趣的部分就来了……

哦,我们玩那个很有趣,其中涉及将 z-index 设置为实际上更低,以说明 flash 认为它是蜜蜂的膝盖,因此必须始终在顶部。

【讨论】:

【参考方案6】:

设置 这个flash变量是这样的

s1.addParam("wmode","transparent");

那么 在 div 标签中使用这种样式

style="z-index:inherit; 

问题会解决的。

【讨论】:

以上是关于html如何将一个div置于最上层的主要内容,如果未能解决你的问题,请参考以下文章

CSS如何把DIV永远置于页面的底部?

CSS如何把DIV永远置于页面的底部

如何将 HTML 内容置于 Flash 影片之上?

如何将一个html页面始终置于窗口的最前面

即使更改窗口大小,如何将 div 置于页面中间?

CSS如何控制 2个div 的 部分 重叠在一起 并将其中一个div的内容固定显示在上层