2014-07-23 94 views
0

這裏是jsfiddle。對象標籤覆蓋div標籤,我該如何防止這種情況?

我把它放在這與一個activeX對象。

請允許您的瀏覽器安裝它來重現此錯誤。

http://jsfiddle.net/hA5fy/

而且簡單的代碼預覽這裏。

<!DOCTYPE HTML> 
<html> 
<head> 
    <script src="http://code.jquery.com/jquery-1.11.0.min.js"></script> 
</head> 
<body> 
    <div id="wanttooverlay" style="width:100px; height:100px; background-color:Red; position:absolute; top:0px; left:0px;"></div> 
    <OBJECT style="width:500px; height:500px; background-color:blue;" id="Rdviewer" classid="clsid:ADB6D20D-80A1-4aa4-88AE-B2DC820DA076" type="application/html" codebase="rdviewer50.cab#version=5,0,0,239" > 
     <param wmode="transparent" /> 
    </OBJECT> 
</body> 
</html> 

我已經做了一些事情來解決像設置z-index,把參數wmode =「透明」,和那種事情。

但似乎沒有任何解決方案給我。

紅框將在我的應用程序中作爲日期選擇器。

這可以通過操縱CSS來完成嗎?

而僅供參考,我通過文檔準備好的腳本實現了對象標籤。

這會是一個問題嗎?

希望有人能解決這個問題。

+0

看來你的問題不關於JavaScript,所以請將其從問題標記中移除 –

+0

@ABFORCE我也在尋找一種JavaScript方式解決方案。 – hina10531

回答

1

OBJECT聯樣式:

插入:

position:absolute; 

更改爲:

<OBJECT style="width:500px; height:500px; background-color:blue;position:absolute;" id="Rdviewer" classid="clsid:ADB6D20D-80A1-4aa4-88AE-B2DC820DA076" type="application/html" codebase="rdviewer50.cab#version=5,0,0,239" > 
    <param wmode="transparent" /> 
</OBJECT> 

注:

  • 嘗試AVO id內聯樣式。
  • z-index僅適用於定位元素(位置:絕對, 位置:相對或位置:固定)。

JSFiddle Demo

+0

這是否適合你?不適合我。我在IE11上測試過它。我知道Z指數如何工作。在您的演示中,對象標籤仍然顯示在紅色框中。我在你的指導中遺漏了什麼? – hina10531

+0

你想要它? – imbondbaby

+0

我不知道你在哪裏的意思。但我試圖讓ID爲「wanttooverlay」的div覆蓋屏幕上的對象標籤。 – hina10531

0

另一種辦法是去除position:absolutediv或者如果你想這些元素是浮動在頁面上把它們放入一個div包裝絕對位置

<div style="position:absolute; top:0; left:0"> 
    <div id="wanttooverlay" style="width:100px; height:100px; background-color:Red"></div> 
    <OBJECT style="width:500px; height:500px; background-color:blue;" id="Rdviewer" classid="clsid:ADB6D20D-80A1-4aa4-88AE-B2DC820DA076" type="application/html" codebase="rdviewer50.cab#version=5,0,0,239" > 
     <param wmode="transparent" /> 
    </OBJECT> 
</div> 

UPDATE

如果你想在OBJECT元素的頂部佈置您的div,解決辦法很簡單,只要將這些元素在你的HTML代碼

<body> 
    <OBJECT style="width:500px; height:500px; background-color:blue;" id="Rdviewer" classid="clsid:ADB6D20D-80A1-4aa4-88AE-B2DC820DA076" type="application/html" codebase="rdviewer50.cab#version=5,0,0,239" > 
     <param wmode="transparent" /> 
    </OBJECT> 
    <div id="wanttooverlay" style="width:100px; height:100px; background-color:Red; position:absolute; top:0px; left:0px;"></div> 
</body> 

看一看this fiddle

+0

我不希望元素浮動。我只想讓#wanttooverlay div顯示在OBJECT標籤上。 – hina10531

+0

@ hina10531如果你想'div'顯示在OBJECT標籤上,解決方案非常簡單,請參閱我的更新後文章 –

+0

你在OBJECT上看到藍色背景嗎?這意味着ActiveX不在那裏激活。一旦你激活它,你會看到OBJECT仍然停留在紅色bg div的頂部。 – hina10531