Tales from the Evil Empire

Bertrand Le Roy's blog

News


Bertrand Le Roy

BoudinFatal's Gamercard

Tales from the Evil Empire - Blogged

Blogs I read

My other stuff

Archives

How to put a DIV over a SELECT in IE6?

Everybody who tried to implement an HTML menu knows it: in Internet Explorer 6, there are some elements like SELECT that always appear in front of all other elements no matter what z-index you apply to them. Other elements that present the same problem are ActiveX controls (including Flash movies), OBJECT tags, plug-ins and iFrames. That's because these elements are implemented as windows whereas other elements are just drawn on the existing background window.

<rant>This sucks. Really. It's a typical case where an implementation detail forces web developers to go through hoops. This problem is IE only and everything works fine in all other modern browsers.</rant>

Now, is it possible to work around it? There is always the possibility of a getElementByTagName and of hiding all such elements from the page when showing an overlaid DIV. Uck. That would really puzzle your users even though it doesn't really impair usability very much in the case of a menu which will go away as soon as you take the mouse cursor out.

There is actually a much better workaround, and that's what the new ASP.NET menu is using. I suspect that most other professional menu controls do the same. Let me warn you that it's very hacky and takes advantage of a behaviour that seems as buggy as what we're trying to fix, but it's also very efficient and seamless.

The idea is to put an iFrame (which is also a windowed control) on the page at exactly the same location as your DIV. The iFrame must be added at the end of the page so that it appears in front of all other windowed controls (the windowed controls are stacked in the order in which they appear on the page). That takes care of covering any SELECT that may be in our way. Now, you may wonder what good that will achieve as I'll just cover my DIV with an iFrame instead of with a SELECT: that shouldn't buy me anything. Well, for some strange reason, it does. IE seems to be utterly confused by our little trick and just shows the DIV in front of the iframe if and only if you position the DIV after you've positioned the iFrame. It seems to forget about the windowed nature of the iFrame for what it renders after it.

If you do it using javascript, just set the position of your DIV after you've set-up the iFrame. If you do it in the HTML markup, just define the DIV after the iFrame. Here's HTML markup that successfully displays a DIV in front of a SELECT element:

<select>
 
<option>This usually appears on top in IE</option>
</select>
<iframe src="javascript:'&lt;html&gt;&lt;/html&gt;';" scrolling="no" frameborder="0"
 
style="position:absolute;width:50px;height:120px;top:0px;left:0px;border:none;display:block;z-index:0"></iframe>
<div style="position:absolute;width:50px;height:120px;top:0px;left:0px;border:solid 1px black;z-index:0">
 
This appears in front of the select in IE
</div
>

<select>
 
<option>This usually appears on top in IE</option>
</select>
<iframe src="javascript:'&lt;html&gt;&lt;/html&gt;';" scrolling="no" frameborder="0"
 
style="position:absolute;width:50px;height:120px;top:0px;left:0px;border:none;display:block;z-index:0"></iframe>
<div style="position:absolute;width:50px;height:120px;top:0px;left:0px;border:solid 1px black;z-index:0">
 
This appears in front of the select in IE
</div
>

One thing is worth noting: if you work with a secure site (with an https: protocol), you can't use "about:blank" as the url of the iFrame, otherwise you'll get a warning from IE saying that the page uses both secure and insecure contents. Not very nice to your users. So in this case, you'll just need to point the iFrame to some blank but secure page on your site. That's an extra hit to the server but hey, you already have a hit for each image on your site and that doesn't prevent anyone from having dozens of images on each page. Only in this case, it won't get cached client-side. See update below for a workaround...

Update: using "javascript:;" as the src of the iFrame in the https: case does the trick without the additional hit to the server. Thanks, Scott.

Update to the update: "javscript:;" is fine if your div is not transparent, but it will display an error message on the iFrame, so it should be avoided for transparent divs. By the way, if your div is transparent, you need to make the iFrame itself completely transparent (using an Alpha filter). That won't affect the hiding power of the iFrame (selects will actually not show through the div).

Update to the update to the update: thanks to David Anson and Kirti Deshpande who pointed me to this neat trick: using "j avascript:'<html></html>';" works well in all cases, even transparency, and avoids the https alert.

LAST UPDATE to this post: Folks, it might be a good time to stop and consider how much it costs you to support IE6. This hack to hide selects is only necessary for older versions of IE that are shrinking fast (6 or smaller; 7 and 8 are NOT affected). I actually think that it is now hurting more than helping to make your site look better in IE6. Give them a reason to upgrade, and show them how. That may be a better use of your time... Just an opinion, but please consider it.

Comments

foobar said:

You can also clip the select box.
# August 9, 2005 7:25 PM

Bertrand Le Roy said:

foobar: yes, you can if you have only one DIV to overlay. In the case of a cascading menu, you would have to clip to something that's not rectangular, which is impossible. And it would be so much more complicated than this anyway...
# August 9, 2005 7:59 PM

Jon Galloway said:

Interesting. I was pretty sure that the Beta 1 hid all selects on the page when the menu was shown. It looked really funky; this hack is at least much better from a user point of view.
# August 9, 2005 8:07 PM

Bertrand Le Roy said:

Jon: you're right. Beta 1 used to hide all select elements. The iFrame hack is available in beta 2 and later builds.
# August 9, 2005 8:09 PM

Scott said:

We use "javascript:;" as the src to avoid the secure/non-secure warning. Works better than putting a blank page in the site IMO. :)
# August 9, 2005 9:13 PM

Bertrand Le Roy said:

Interesting. I'll update the post. Thanks for the tip.
# August 9, 2005 9:16 PM

Bertrand Le Roy said:

Ron, that's very nice of you, but there's already a link to this article in the post, if you look carefully. Thanks for making it more obvious, though.
# August 9, 2005 9:29 PM

Collin Yeadon said:

Thanks for the "hack". I will need to try that out. I have gotten into the habbit of solving this problem by avoiding it but if I can avoid making sacrifices then that's great.

I wonder if this would also work for other objects. I have a large flash movie that pops up on a site I am working on. The flash is set to be transparent and all the standard stuff to let it stay above the other page elements. But I noticed the DIV problem exists with my flash movie as well. I have a hunch that this same hack will make the div my flash movie is in also appear over the SELECTS.

Do you know if this hack is browser version specific? I wonder if IE7 has corrected this problem.
# August 9, 2005 9:59 PM

Bertrand Le Roy said:

Collin, in theory, it should also work for other objects such as Flash movies although the transparency of the Flash movie may be trickier than the simple DIV case. If you can try it, can you post here the results of your experimentations?
I don't know if IE7 plans to correct this problem. It's probably too early to tell but if they fix it the hack won't break because the non-windowed behavior is correct too (try the code in Firefox to verify it). I know that the way windowed elements used to work in earlier versions of IE was different and that this hack may not work on older IEs, though.
# August 9, 2005 10:07 PM

Collin Yeadon said:

Bertrand, am I missing something? The IFRAME has a white background.. so how is this solution supposed to work? Possibly something else in my app is breaking the hack?
# August 9, 2005 10:52 PM

Collin Yeadon said:

OK, well, I guess I know what you meant about transparent being a problem.

Results are in:

Testing in IE6, It does show up over the SELECT as suspected. So flash is no problem. But, I guess there is no way to make that IFRAME transparent so this hack works great only if your menu has a background to cover up the IFRAME.

Lets hope IE7 get this fixed.

Good to know about this method anyways. Thanks BLR!
# August 9, 2005 11:12 PM

Bertrand Le Roy said:

Collin, yes, I think you've got it figured out: the point of the hack is that the iFrame is not transparent... So for a transparent movie, I don't think this can help. But it definitely helps for a menu DIV.
# August 9, 2005 11:55 PM

Josh Twist said:

Hi Bertrand,

Just as a note - I don't think *anything* is cached when accessed through https (for obvious reasons).

Josh
# August 10, 2005 2:45 AM

Sébastien FERRAND said:

Thx for this hack...
# August 10, 2005 9:41 AM

Steve W said:

For simple menus (with no submenus) you can also use the window.createPopup() method, and that goes over windowed elements.
# August 17, 2005 5:04 PM

Bertrand Le Roy said:

Collin: thanks for the script. I can see just a little problem: if some of your selects are already hidden for whatever reason, you're going to make them visible. This can be fixed by remembering the initial state in an expando.
# August 18, 2005 3:08 PM

Collin Yeadon said:

Yeah, I thought about that. For my purposes this was all that I needed since I am writing a small flash movie to the screen. Where toggling would become an issue is with menus that have multiple depths.

Post Correction: "I was tempted to make this script write a div to the page, position it where the IFRAME is and then style it to look like a drop down list but decided that was just not worth the hastle. " ... I meant to say SELECT not IFRAME.
# August 21, 2005 10:08 PM

Raymond den Ouden said:

I noticed a little bug on my implementation....

after resizing the window, my menu is dropped behind the selectboxes, until the page is reloaded, then it works again
# September 6, 2005 10:46 AM

Rohit said:

Has anyone here faced a problem when using the client callback functionailty of ASP.NET 2.0 while having an iframe in the contentpage?

I have used an iframe in my contentpage since I use to display a calendar. However, upon doing so, the client callback no longer works. Upon trying to dig into this,  I realized that the postData variable in WebForm_DoCallback is initialized to a different value. Any help on this will be highly appreciated.
# May 26, 2006 12:05 PM

Bertrand Le Roy said:

Rohit: if you choose to use an iFrame, what's inside the iFrame is basically another page so I wouldn't even use callbacks in this situation, I would just point the frame to a page that contains only the calendar and does regular postbacks.
Even better, don't use an iFrame...
# May 27, 2006 7:34 AM

Kevin R Hurst said:

Collin Yeadon,

As far as your code sample, do you just put it on a page? It didn't really work when that was tried. any suggestions?
# June 21, 2006 5:02 PM

Adrian said:

The problem is not present in IE7. However, I very much appreciate the solutiion presented above. IE6 will be around for some time yet.
# June 28, 2006 7:08 AM

Stine said:

Thanks a lot for the hack!! I was not at all happy with hiding my selects..... Now I am just wondering if there is any reason not to put the content of my div into the iframe instead?:)
# July 25, 2006 8:30 AM

Bertrand Le Roy said:

Stine: yes, there is a very good reason not to do that. If the select is in the iFrame, it will be in a different page, and thus in a different form, so you won't see it when you post.

# July 25, 2006 1:55 PM

Brian said:

"BLOCKED SCRIPT;" as the src still causes the warning message to show on https pages for me in ie6sp2... I have found that src="BLOCKED SCRIPTfalse;" works perfectly (though in firefox the iframe will display 'false', so make sure to set a background for the div above it). The reasoning behind this still eludes me - meh.
# August 9, 2006 7:03 PM

emortal said:

Works with https, no message.
# September 13, 2006 10:54 AM

emortal said:

Sorry that should have been BLOCKED SCRIPTfalse; NOT BLOCKED SCRIPTreturn false;
# September 13, 2006 10:56 AM

JF Trichard said:

It works fine with IE7
# September 14, 2006 10:03 AM

Boldi said:

Using "#" as the src of the iFrame works fine with transparent iFrame too but I'm not sure is it good for the https: case. Would someone try it, please?
# October 29, 2006 4:33 PM

scathe said:

#, if clicked - will refresh the root page, not a good idea nowadays with ajax, cms sites and the like. In other words # doesnt work fine with me :)
# November 8, 2006 5:53 AM

Bertrand Le Roy said:

scathe: actually, # does *not* navigate away from the page if clicked, but it adds to the browser history. You can use BLOCKED SCRIPTvoid(0) instead anyway.

# November 8, 2006 3:18 PM

Dantheman said:

I have draggable div elements on my page which float over select and input elements. In IE this is very broken, as you described, so instead I've forced these draggable div elements to load in a relatively positioned span (using a bit of Collin Yeadon's code to detect the browser).  

I didn't use iframes because i had difficulties making these position properly with the draggable element.

I've opted to leave the IE version of the site partially crippled (but still functional) until people either chuck IE into the toilet or upgrade to IE7.

# January 2, 2007 10:54 PM

Hamish said:

Heh, I just spent an hour or so writing a very pretty div-powered fading tool-tips for some forms I was writing when I came accross this problem. Cheers for the solution - hopefully one day we won't have to hack things together like this.

# January 16, 2007 8:01 PM

Keith Martin said:

With HTTPS, I've found that on IE6 it seems that error pages generated by the browser are treated as insecure, so anything that causes an error in the src of the iframe will cause the secure/insecure mix alert.

The only thing I've found that works for me is to put a src that points to a valid html page on the server. any of the javascript options, or pointing to a page that does not exist, causes the secure/insecure alert.

# March 27, 2007 2:19 AM

Bertrand Le Roy said:

Keith: even "j avascript:'<html></html>'"? (remove the space, I added it so the blog engine doesn't remove it)

# March 27, 2007 1:54 PM

Collin Yeadon said:

Kevin R Hurst:  You've probably solved your problem between June '06 and May '07 but since I stumbled upon this page just now...

The script is very simple, the only way it wouldn't work is if you give it the wrong coordinates.  If you use javascript to grab the values from a menu for instance make sure that you are getting the absolute top and left and not just the coordinates within whatever parent container it's in.  It really does nothing but toggle so you can have it in the hide and show script of the menu and it would work fine..  Again, that is just an ugly solution as a last resort and of course it can be improved upon in many ways but why bother?  IE6 will be gone within the next couple years..

# May 21, 2007 7:33 PM

hnr said:

I left a comment here a few weeks ago, but it hasn't been activated yet, so I'll submit it again: I've a div with a semitransparent background, which has the width and the height of the browser window, so it's shown all over the website. Well, there are also a few select boxes. Without the iframe they show through the div, of course. Now I've put a transparent iframe with the properties you recommended in your posting (alpha filter etc.) over the whole site. However, the select boxes don't show through the div any more - that's pretty good. But they aren't visible any more, more precisely: I can't see them among the semitransparent div. Hope you've got any advice, thanks
# June 1, 2007 12:10 PM

Bertrand Le Roy said:

hnr: I'm afraid this is the best you'll get. On the bright side, IE7 is here now and it's just a matter of time that this bug becomes just one of the great memories we'll keep from IE6...

# June 1, 2007 12:33 PM

sudhir said:

hello Mr. Bertrand Le Roy I had faced the problem, in which the menu-bar-list(writen in java script) items, were displayed behind the dropdownlist(asp.net). I had used iframe as an list element which solved my UI problem. thaks, your idea is realy amazing
# June 7, 2007 3:58 AM

Amit Solanki said:

I tried with iframe and div. But both dynamjcally by putting innerHtml. But in my case div object is hidden by iframe even if I set z-index of div more than iframe. I use IE 6. Is there any other solution?
# June 7, 2007 10:48 AM

Bertrand Le Roy said:

TimmEH: it's the iFrame that must be absolutely positioned to be at the same place as the div, but there's no constraint on the positioning of the div itself.

Amit: creating the elements dynamically doesn't make a difference. That's what we're doing in several of our controls. There must be something else that's different from the code presented here.

# June 8, 2007 12:29 AM

Bertrand Le Roy said:

Dinesh: doesn't removeChild work?

# July 5, 2007 7:12 PM

Nicholas said:

I suspect the reason this works goes back to windows forms. When a transparent control overlaps another control, the bottom control never gets the instruction to draw the portion underneith the transparent control so all you end up seeing is the background. The HTML is rendered to the background layer as far as winforms is concerned, so by putting a transparent IFrame control over the select or Flash control the draw instruction is prevented from being issued causing the div element underneith to appear.

# July 27, 2007 5:57 PM

Bertrand Le Roy said:

Nicholas: no, IE doesn't use any of .NET or Windows Forms.

# July 29, 2007 7:22 PM

Bertrand Le Roy said:

Kalyan: Err, not to be rude, but the only thing I can suggest is that you read the post...

# August 5, 2007 9:29 AM

Bosker seth said:

select box is display over the div. How to overcom that

# August 27, 2007 12:27 PM

Bertrand Le Roy said:

Bosker: please read the post before posting a comment. Not to be rude but that's exactly what it is about.

# August 27, 2007 2:11 PM

Hiran Karunananda said:

i used "BLOCKED SCRIPT'&lt;html&gt;&lt;/html&gt" to fix my div overlapping with iframe in https. when i checked with my local machine iis it works perfectly wihout giving any 'non secure items' alert. but when i save file into my test server alert will popup. so i like to know if any configuration change needs to fix this issue or any other thing??

please some body have an idea would be really appreciated.

# September 3, 2007 9:07 AM

Bertrand Le Roy said:

Hiran: your message doesn't make it clear if you included both quotes around the html tags (I don't see the second one). The idea here is to use the javascript protocol and return a literal string that contains emtpy html.

# September 4, 2007 3:53 PM

evalotta said:

Thanks very much for your article. It was really helpful to fix the problem. Keep up the good work :)

# September 10, 2007 10:19 AM

Kari said:

I'm also looking for a solution to the problem posted above by Abhishek.  I have a Div that appears on top of some selects.  They are all hidden fine by the iframe (which I have inside the div) but as soon as you scroll the page the selects show through, and stay there. Unfortunately I have to support IE5.5 and 6.  Any ideas?? (other than the ugly method of hiding each one of the selects)

# September 25, 2007 2:07 PM

Angelina Fernandes said:

I tried using the onresize event ..it failed to work with me. so instead i captured the onscroll event. works  perfect now. let me know if anyone foresees the code failing.

angie

# October 10, 2007 4:23 AM

Bertrand Le Roy said:

Rob: so you're the guy still using applets ;) Seriously, I think Java applets are just running in an ActiveX control so I'm just as confused as you are.

# November 14, 2007 3:13 PM

Rob said:

I use a charting software applet in my web applications for advanced web chart features.  This is a 3rd party tool that is very effective.  Is there something that you have against using applets?  Regardless, if my understanding is correct, my navigation menus using this blog's principle should appear over the applet, but they do not.  Any ideas?

# November 14, 2007 4:09 PM

Bertrand Le Roy said:

Rob: I was just kidding. Sorry, I have no clue why Applets would behave any differently.

# November 14, 2007 4:13 PM

Estéfano said:

Hi

You try set backgroud-color, because this property is not set the controls under div can be accessed.

# November 29, 2007 7:49 PM

Keli said:

Hello all,

I've tried it and it works ! Thanks a lot

# December 3, 2007 10:55 AM

web design melbourne said:

thanks allot. I almost moved my wmv content to the place where it does not come in a way of website css menu. Now I do not need to worry about that issue and can place windows medial player content on top left side div on my website

# December 6, 2007 5:40 AM

pankaj said:

do u have any working example of a form using div layer and overlapping a select box.

# January 14, 2008 7:12 AM

Jerz said:

Thanks for the iFrame info.  It works great in some cases. Not to confuse anything, for the newer programmers out there you can always use the ol' standby of: <img src="YourMouseOverImage.gif" onMouseOver="form1.DropdownMenu.style.width=0;" onMouseOut="form1.DropdownMenu.style.width=100;">

# February 10, 2008 12:52 AM

Drew said:

This may have been addressed in an earlier comment but I wanted to clarify.

I am using an iframe under a floating div to display tooltips on a form with select boxes. The iframe is using the alpha filter for transparency in IE6, as the div has a bubble image with transparent sections. This works for most of the form, but the transparent section of the iframe overlapping the select boxes is white instead of transparent. Is this a known issue or am I overlooking something?

Thanks!

# February 21, 2008 3:10 PM

Bertrand Le Roy said:

That's known. I don't know of a workaround.

# February 21, 2008 3:54 PM

Drew said:

I was hoping that was not the case. :(

Thanks for the quick response.

# February 21, 2008 4:02 PM

Naor Rosenberg said:

If you use Dojo Toolkit's "dojo.dialog" widget to display the popup div, they do all the work for you.

Actually they use the IFrame solution.

# April 2, 2008 8:57 AM

Bertrand Le Roy said:

@Naor: err, sure, as does the ASP.NET menu, the popup control in the Ajax Control Toolkit and many, many other similar components.

# April 2, 2008 12:25 PM

egainey said:

I can't figure out how to get this work! What am I missing?

1. Create Dropdownlist

2.Create iFrame

3.Create div with matcing style...

What else do I need to do...please help this is URGENT!

# April 14, 2008 5:50 PM

Fabien Molinet said:

Hi egainey,

Can you give us more information ? :)

You can mail me at : fabien.molinet[you know what]gmail.com

I'll help you.

Best regards,

Molinet Fabien

# April 15, 2008 8:13 AM

KAGRAN22 said:

for the IFRAME SRC just use the most visited URL in the World about:blank

Doesnt require any external Content and works in IE/FF and guess everywhere else...

^_^

# August 16, 2008 12:34 PM

Bertrand Le Roy said:

@Kagran: as the post states, "if you work with a secure site (with an https: protocol), you can't use "about:blank" as the url of the iFrame, otherwise you'll get a warning from IE saying that the page uses both secure and insecure contents."

# August 18, 2008 2:28 PM

Hari Menon said:

Thanks a lot for this neat little post. Helped me fix the bug like a charm...

# October 17, 2008 11:52 AM

Chuck said:

Nice scripting, Life would have been much better if ms had fixed this bug, but at least there is a hack. All the more it makes me wish more people used firefox 2.x or higher

# November 26, 2008 3:05 AM

Bertrand Le Roy said:

@Chuck: well, Microsoft *has* fixed this bug back in IE7.

# November 26, 2008 3:39 PM

Roger said:

Had the same problem with positioning a div over an text input box, but didn't want to use the iframe hack. It appears that if you set the backgroundcolor of the input to transparent, the problem is solved (only works if you don't mind a transparent input box).

# December 19, 2008 10:49 AM

Bertrand Le Roy said:

@Roger: as far as I know, plain inputs don't have this problem, so it's possible that you were experiencing a plain z-index issue. If not, I'd love to see a repro (bleroy at microsoft). Thanks for the feedback.

# December 19, 2008 3:09 PM

romek said:

I know that this is pretty old topic, but can't figure out how to cover windows media player object in similar way..

# January 27, 2009 7:32 AM

Bertrand Le Roy said:

@romek: windows media player objects should be subject to the exact same fix.

# January 27, 2009 1:58 PM

softmaran said:

it doesnt work for me if i put it in datalist

# March 12, 2009 3:01 AM

Ram said:

Thanks a lot. Very Useful

# May 14, 2009 4:44 AM

Terry said:

It is simple, just have a DIV mask then disable all the SELECT elements.

# June 17, 2009 6:54 PM

Frank said:

I can't figure it out, but as Zoro points out, there's a case when, on scroll of the main window, the select appears in front of the iframe. And then when you perform some action that requires rendering (e.g. drop down the select, or show an unrelated div, it returns to normal (i.e. iframe on top).

I'm trying to isolate the cause in this js I've been given, but if you know of any reason why this might happen (why a scroll would cause the select to be rendered on top of an iframe), it would be mighty useful.

Thanks.

# August 26, 2009 2:58 AM

Bertrand Le Roy said:

@Zoro: you need to handle the scrolling event and reposition the iframe.

# August 26, 2009 2:04 PM

Ferdy said:

Perfect !!

The iFRame covers my DropDownBox under de (popup div)

Thanks a lot !!

# December 17, 2009 3:57 AM

Andre said:

ah nice one. if only we could rid computers of ie most of our compatability issues would be solved!

thanks for this

# December 28, 2009 6:29 AM

Chris said:

Great post .... we are experiencing the odd IE6 behaviour where the select control shows thru if the page is scrolled. There are no background images on the page however. Setting the iframe size to 100% W and H or trying to set the iframe offset to match the scroll offset makes no difference. anyone come across other fixes?

# March 10, 2010 11:52 AM

Bertrand Le Roy said:

@Chris: setting to 100% won't work. The whole point of the frame is that it should be the exact right size. What you need to do is capture the scroll events and move the frame with the page.

But at this point in time, it might be a good idea to drop IE6 support altogether if you can afford it.

# March 10, 2010 12:40 PM

Laiq Ahmad said:

I want to check that is the div display is block or none with css anybody can help me

# April 6, 2010 2:58 AM

Sylvain said:

Thank you for this article. I hate to work on IE6 bugs and I really would like people to definitely get rid of it.

Thanks again

# April 14, 2010 12:46 PM

pierre said:

Hi,

I've been looking for a solution but didn't wanted to use iframe.

I found that a div can appear over an input field on ie7, but the div has to come AFTER the input in the code.

That's what i done and it works ; then with css i made it appear on my page on its right place.

# July 27, 2010 7:36 AM

Bertrand Le Roy said:

@Pierre: the bug that the post is referring to is *fixed* in IE7. The problem in IE6 was that it was impossible without the iframe trick to put a div over a select.

In IE7, the behavior is correct. The order in which the elements appear determine the default layering, but you can override that in CSS using z-index.

# July 27, 2010 1:45 PM

transattic said:

well given that 29% of all visitors use ie6 still (on my site) means i need to pay real close attention to bugs.  

i already went through 5 select/iframe/ie6/fix sites but my problem seems to be special.  hopefully yours will get it right.

# September 30, 2010 10:51 PM

transattic said:

Hurray!!!

You've done it!  my dhtml popup now actually looks great

# September 30, 2010 11:16 PM

ket said:

It's still working fine with the IE9 and Firefox 4+, not mention to latest chrome. I use this tactic to overlay a java applet, and it is working far better than any iframe shim method I've ever come across. Do not stop developing it.

# October 28, 2011 2:28 PM

bhanukumar said:

i am trying to display pdf file in webpage in IE7 browser.but, when ever i am trying to scroll down the cursor ,the pdf content is overlapping on the headr part of the screen.

i have used div and iframe.

pdf file calling through the iframe and iframe is inserted in side the DIv Elemnent.

# October 29, 2011 2:21 PM