2010-01-21 4 views
7

Ich muss ein div-Tag oben buchstäblich alles andere auf der Seite platzieren. Ich habe gelesen, dass die Einstellung wmode param zu undurchsichtig wird es tun, aber auch gehört, dass das nur IE beeinflussen wird. Ist das wahr? Wie machst du das?Platzieren eines Div vor einem Flash Embed

+0

Meinst du nicht 'wmode = 'transparent'? –

+0

"Opaque" und "Transparent" erzwingen, dass der Blitz als Teil des Seitenflusses gezeichnet wird, wobei Transparent Transparenzeffekte von Flash ermöglicht. 'window' (der Standardwert) bewirkt, dass der Flash-Film in seinem eigenen Puffer oberhalb des Seitenlayouts gerendert wird. – Ipsquiggle

Antwort

7

in Ihrem Flash-Applet-Tag, einfach dieses:

<object id='flashObject' ....> 
    <param ....> 
    <param name='wmode' value='opaque'> 
    <embed ... wmode='opaque'> 
    </embed> 
</object> 

Das sich darum kümmern sollte.

Beachten Sie, dass das Rendern sowohl für den Flash-Film als auch für die Seitenelemente verlangsamt wird, aber in den meisten Fällen kein Problem darstellen sollte.

Durch das Einschließen dieses Objekts sowohl als Objektparameter als auch als Einbettungsattribut funktioniert es in allen gängigen Browsern.

bearbeiten, wie pro MidnightLighning Kommentar:

Sobald das Flash-Objekt auf diese Weise hergestellt wird, müssen Sie die div über die Seite schweben, etwa so:

<body> 
    <object> ... <!-- this is your flash movie --> </object> 
    <div id="floater">The Floating Div</div> 
</body> 

Dann erstellen Sie Ihre CSS wie folgt aus:

#flashObject { position:relative; z-index:1 } 
#floater { position:absolute; z-index:100; top:0; left:0; } 
+0

Ich habe es versucht, es hat nicht funktioniert: - \ – Webnet

+0

Haben Sie dann 'position: absolute;' verwendet, um Ihren DIV über das Flash-Element zu positionieren? Der obige Code bereitet das Flash-Element korrekt vor, aber Sie müssen dann das DIV darüber setzen; vielleicht einen "Z-Index" auf die mit dem Flash-Element, und die DIV, die darüber geht? – MidnightLightning

+1

@Webnet: Was hat nicht genau funktioniert? War der Blitz immer noch über dem Div. Wurde das Div nicht korrekt positioniert? Es wäre eine große Hilfe, wenn Sie Ihre Seite auf ein Minimum reduzieren, das das Problem aufzeigt und den Code veröffentlicht. – Ipsquiggle

0

Auf meinem Client-Seite, habe ich html:

<div id="photo> 
    <div id="flash"></div> 
    <ul id="navigation">..</ul> 
</div> 

css:

#flash { z-index: 6; } 
#navigation { z-index: 8; margin-top: -100px; } 

und ich #flash dann ersetzen mit meinem Flash-swf mit SWFObject (http://code.google.com/p/swfobject)

Also im Grunde, z-index und einige intelligente Blitz sollte Arbeit einzubinden:)