最近在做項目的過程中需要頻繁的使用iframe畫頁面的層級框架,大部分浏覽器是沒有背景的,但是iframe在IE中默認是有一個白色的背景色的,當主背景色不是白色的時候,在這一部分會顯得很突兀。幫助手冊中給出了解決方案,即將iframe中的allowTransparent屬性設置為true,即可。在幫助文檔中也給出了相應的示例,示例如下:
復制代碼代碼如下:
<BODY STYLE="background-color: red">
<IFRAME ID="Frame1" SRC="transparentBody.htm" allowTransparency="true">
</IFRAME>
<IFRAME ID="Frame2" SRC="transparentBody.htm" allowTransparency="true"
STYLE="background-color: green">
</IFRAME>
<IFRAME ID="Frame3" SRC="transparentBody.htm">
</IFRAME>
<IFRAME ID="Frame4" SRC="transparentBody.htm"
STYLE="background-color: green">
</IFRAME>
</BODY>
理論上,這樣做就沒問題了,但是呢IE好像反應不大,依舊還是有白色的背景。其實到了這一步,我們還需要在子頁面的<body>標簽添加<body bgColor="transparent">,示例如下:
http://img.blog.csdn.net/20140610165850968?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQva3VucGVuZ19tdWJhbw==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center
main.html主頁面代碼:
復制代碼代碼如下:
<html>
<head>
<title></title>
</head>
<body style="background-color:blue;">
<table
style="width:100%;border:0;height:100%;cellpadding:0;cellspacing:0">
<tr height="100%">
<td height="100%" width="30%">
<iframe id="test1" src="test1.html" allowTransparency="true" width="100%" height="100%"></iframe></td>
<td height="100%" width="40%">
<iframe id="test2" src="test2.html" allowTransparency="true" width="100%" height="100%"></iframe></td>
<td height="100%" width="30%">
<iframe id="test3" src="test3.html" width="100%" height="100%"></iframe></td>
</tr>
</table>
</body>
</html>
test1.html頁面代碼:
復制代碼代碼如下:
<html>
<head>
<title></title>
</head>
<body bgcolor="transparent">
<h1>test1</h1>
</body>
</html>
test2.html頁面代碼:
復制代碼代碼如下:
<html>
<head>
<title></title>
</head>
<body>
<h1>test2</h1>
</body>
</html>
test3.html頁面代碼:
復制代碼代碼如下:
<html>
<head>
<title></title>
</head>
<body>
<h1>test3</h1>
</body>
</html>
這個小例子主要是iframe標簽的allowTransparency屬性應用,在該屬性設置為true並且iframe所加載的子頁面的<body>標簽背景顏色設置為transparent(透明)時,iframe將透明化。
allowTransparency設置或獲取對象是否可為透明。
bgColor 設置或獲取對象的背景顏色。