#557 closed defect (wontfix)
IE 6 refuses to load page if dojo is loaded in HEAD and a BASE tag exists before that.
Reported by: | Owned by: | Tom Trenka | |
---|---|---|---|
Priority: | high | Milestone: | |
Component: | Core | Version: | 0.3 |
Keywords: | Cc: | [email protected]… | |
Blocked By: | Blocking: |
Description
Initially discovered in Tacos ( http://tacoscomponents.jot.com/BugReporter/Bug86 ) this problem appears when a page has this hierarchy
- BODY
- HEAD
- BASE
- SCRIPT (to include dojo)
- HEAD
In this particular case, IE popups an alert saying: " Internet Explorer cannot open the Internet site localhost:8080/tacos4-demo/app. Operation aborted ".
The offending code was introduced in hostenv_browser.js (rev.3206, line 376, relating to VML addition) and it appears that IE dislikes calls to document.createStyleSheet() after a BASE tag has been parsed-loaded.
Solutions
- Put the BASE tag after the SCRIPT that includes dojo, or
- Revert hostenv_browser.js to rev.3024 which uses document.write for VML addition
In Tacos / Tapestry case, we're opting for the second one, since the BASE tag is automatically included by the framework.
Andreas Andreou
Change History (12)
comment:1 Changed 15 years ago by
Cc: | [email protected]… added |
---|
comment:2 Changed 15 years ago by
Owner: | changed from anonymous to alex |
---|---|
Status: | new → assigned |
comment:3 Changed 15 years ago by
comment:4 Changed 15 years ago by
Actually, i've seen your test site a few weeks ago :) I didn't quite get your comment on 'having the head inside the base even valid html' but anyway, viewing at your html helped pinpoint the problem.
We both have xhtml1-transitional.dtd DOCTYPE and our html is
<html> <head> <base href='...'/> <script></script> (include dojo) </head> <body> </body> </html>
the difference being in the way the base tag is written (you use <base></base>).
We'll probably patch Tapestry to output <base></base>, even though rev.3024 of hostenv_browser.js didn't exhibit this problem.
comment:5 Changed 15 years ago by
Sorry, my question should have been...
Should a head tag be inside the BODY tag?
comment:6 Changed 15 years ago by
Grrr... it's a typo... i meant HTML in the initial bug report, just like the example html code you and I wrote in the previous comments.
comment:7 Changed 15 years ago by
Milestone: | 0.3release → 0.3.1 |
---|---|
Owner: | changed from alex to Tom Trenka |
Status: | assigned → new |
It's half dozen of one, 6 of another; we'll probably revert but we want to give it thought.
comment:8 Changed 15 years ago by
We recently added a patch (http://issues.apache.org/jira/browse/TAPESTRY-935) that makes tapestry output
<base href='...'/><!--[if IE]></base><![endif]-->
so this no longer affects us... but i guess, other IE users may come across this :)
comment:9 Changed 15 years ago by
Resolution: | → invalid |
---|---|
Status: | new → closed |
Andy, Glad to hear you found a solution. I'm going to close this bug for now and keep an eye out for recurrences.
comment:10 Changed 15 years ago by
Milestone: | 0.3.1 → 0.4 |
---|---|
Resolution: | invalid |
Status: | closed → reopened |
Version: | 0.2 → 0.3 |
With the new vector APIs we're working, I'm reopening this ticket, we'll see what we can do about it.
comment:11 Changed 15 years ago by
Resolution: | → wontfix |
---|---|
Status: | reopened → closed |
I'm closing this ticket again; seems like gfx needs to have this setup this way, so we'll have to deal with this on a case by case basis.
Just a question, but is having the head inside the base even valid html? I use the following structure and everything works fine in IE6.
This is an IE6 only site, but it uses the above structure. (http://test.schallcentral.com/Dashboard.aspx)