2011-05-20 72 views
4

我在頁面上嵌入了YouTube視頻,它們出現在下拉菜單中,通過Lightbox等。我寧可不使用舊的YouTube嵌入代碼,但愚蠢的iframe將自己置於頁面上的其他任何元素上。是否有可能讓它學習它的地方?是否可以在iframe之前放置某些東西?

回答

4

可以漂浮都不管你想在它上面的容器內的iframe和。

然後,在上面想要的項目上,只需設置一個負頂部邊距。

Here's a jsfiddle顯示我的意思。

您也可以對前面想要的項目使用絕對定位,但這通常會導致網站出現其他問題。

更新

看來您正試圖違背常規HTML流程。 HTML中第一個出現的東西通常是「在」之下,或者是在之前發生的事情之前。

但是,您可以從HTML渲染的常規流程中取出一個元素並將其完全放置。

我已經updated the jsfiddle顯示如何完成。被警告,絕對位置可能會將其他問題帶入您的網站設計。

+0

謝謝,但問題是#over之前的iframe頁面上,像這樣http://jsfiddle.net/6wXvA/11/ – 2011-05-20 17:32:09

+0

爲什麼不能你改變順序? :(你試圖做的事情並不少見,但往往不符合HTML設計的原則,我已經更新了我的答案 – rockerest 2011-05-20 17:41:02

+0

嗯,我有一個產品帶有使用colorbox(如lightbox)打開的圖像,並在這些圖像下面當我點擊圖片時,colorbox打開,但是YouTube剪輯位於打開的圖片前面。所有colorbox元素的位置:absolute; top:0; left:0; z-index:9999;所以它應該在iframe前面,對嗎? – 2011-05-20 17:50:16

0

您可以使用margin-top:12px;或您的標籤內的東西。

+0

對不起,我的意思是OVER就像在前面,我會改變標題。 – 2011-05-20 17:05:03

+0

你把youtube放在ifram – Anish 2011-05-20 17:08:13

+0

是的,現在YouTube使用iframe進行嵌入,除了iframe與頁面上的任何其他元素重疊以外,它很好,很短 – 2011-05-20 17:14:46

1

嘗試在框架上設置z-index。

z-index

+2

downvoted因爲一個簡單的測試jsfiddle.net或類似的網站會表明,這是行不通的。 – rockerest 2011-05-20 17:14:14

+0

這不起作用 – 2011-05-20 17:15:10

+0

不錯的網站jsfiddle,謝謝:) – 2011-05-20 17:16:10

0

如果你把iFrame放在一個div中,並在div上設置一個z-index,這應該可以工作。我一直在工作中這樣做。

5

最後更新

添加在iframe網址的結尾?wmode=transparent&wmode=transparent如果有過,以及其他參數,可以似乎解決該問題的所有瀏覽器。


原始答案

使用z-index與定位結合在http://jsfiddle.net/gaby/BS4Ww/3/

相對或絕對

例如用下拉過YouTube視頻(新代碼


更新

添加diviframe以及我誤解下拉

+0