Css的zindex属性与Flash动画层叠需注意

昨天做个小东西,遇到的问题,浪费的不少的时间,写出来希望能为他人节省时间...

先来介绍z-index css属性

以下是z-index介绍:
z-index : auto | number
auto: 默认值。
number: 无单位的整数值,可为负数 。

z-index 值较大的元素将叠加在 z-index 值较小的元素之上。对于未指定此属性的定位对象,z-index 值为正数的对象会在其之上,而 z-index 值为负数的对象在其之下。

注意:这个属性不会作用于窗口控件,如 select 对象。在IE5.5+中, iframe 对象开始支持此属性。而在之前的浏览器版本中, iframe 对象是窗口控件,会忽略此属性。

z-index 属性适用于定位元素(position 属性值为 relative 或 absolute 或 fixed的对象),用来确定定位元素在垂直于显示屏方向(称为Z 轴)上的层叠顺序(stack order)。

每一个定位元素都归属于一个stacking context。根元素形成 root stacking context,而其他的 stacking context 则由定位元素产生(此定位元素的 z-index 被定义一个非 auto 的 z-index 值),定位子元素会以这个 local stacking context 为参考,用相同的规则来决定层叠顺序。并且 stacking context 和 containing block 之间并没有必然联系。

当 stacking context 一样的时候,就用 z-index 的值来决定怎样显示,如果 z-index 也相同(即 stack level 相同),则按照档中后来者居上的原则(back-to-front )的顺序来层叠。

当任何一个元素层叠另一个包含在不同 stacking context 元素时,则会以 stacking context 的层叠级别(stack level)来决定显示的先后情况。也就是说,在相同的 stacking context 下才会用 z-index 来决定先后,不同时则由 stacking context 的 z-index 来决定。例如:

定位元素 A(z-index:100)里面有定位元素 A1(z-index:300),而定位元素 B 和元素 A 兄弟关系(z-index:200)。你会发现无论 A1 的 z-index 是多大,也会被 z-index 是 200 的 B 所覆盖,因为 A 的 z-index 只有 100。

简单的来讲此属性就是设置网页中一旦出现元素层叠,用此属性来设定出我们想要的效果.这个大家都清楚..

此篇文章所要提示我们需要注意的是,当遇到Flash动画与页面中div层叠时,仅仅用z-index属性是不够的,我们还需要对其flash进行透明化的设置,即引用下面代码即可

以下是flash代码:
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" style="z-index:-1px;" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0" width="150" height="156">
     <param name="movie" value="<flash文件>" />
     <param name="quality" value="high" />
     <param name="wmode" value="transparent" />
     <embed src="<flash文件>" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" wmode="transparent" width="150" height="156"></embed>
</object>

  

  官方(Adobe)建议: Adobe - Developer Center :, 尽量使用他提供的 AC_RunActiveContent.js 和C_ActiveX.js 来秀 swf , 并另外用 <noscript> 将原本的 <object><embed> 包进來(以防使用者把 Javascript 关闭的状况).

  • AC_RunActiveContent.js: 您可使用此文件来解决「外部 JavaScript 解決方案: 适用动态内容的多种情况」中所述的 Flash 和 Shockwave 內容问题。
  • AC_ActiveX.js: 您可使用本文件來解決「其他動態內容類型的解決方案」一節所述的問題。
  • SampleActiveContent.html: 本檔案提供程式碼範例, 當您在使用 AC_RunActiveContent.js 和 AC_ActiveX.js 檔案時, 可用於 HTML 網頁中。
Code

   

  

  

原文地址:https://www.cnblogs.com/dsliang/p/1585920.html