IE6/Win box model bugfix

 
From: "Shane Clintberg" <shaneclintberg@PROTECTED>
Date: August 17th 2005
 
I've now fixed the IE6 menu width bug that was in Dada Mail 2.9.x. The fix is available for 2.10 alpha testers here (rev 1.37), and will appear publicly in Dada Mail 2.10 stable.
 
 
Anyone wishing to implement this fix retroactively in a working installation of Dada Mail 2.9, 2.9.1 or 2.9.2 should not use the above-linked CVS file, but should do the following instead:
 
1. Open your version 2.9.x copy of default_css.css , located in the dada/DADA/Template/templates directory.
 
2a. Find the following section...
 
----- snip -----
 
#Menu {
 
text-align:left;
position:absolute;
top:70px;
left:20px;
width:182px;
padding-left:10px;
padding-right:10px;
padding-top:1px;
background-color:#fff;
border:1px solid black;
line-height:150%;

/* Again, the ugly brilliant hack. */
voice-family: "\"}\"";
voice-family:inherit;
width:160px;

}

/* Again, "be nice to Opera 5". */
body>#Menu {

 width:160px;
}
 
----- /snip -----
 
 
2b. And replace it - in its entirety - with:
 
 
----- snip -----
 
#Menu {
 text-align:left;
 position:absolute;
 top:70px;
 left:20px;
 width:160px;                      /* How things should be. */
 padding:1px 10px 0 10px;
 background-color:#fff;
 border:1px solid black;
 line-height:150%;
}
 
/* Box model hack for IE5.X/Win, and IE6/Win in quirks-mode. This comment is part of the hack. \*/
* html #Menu {width: 182px;}
/* This comment ends the hack. For details, see the final example at: http://tinyurl.com/9yld6 */
 
----- /snip -----
 
 
3. Save and upload your changes back into the dada/DADA/Template/templates directory.
 
 
 
P.S. to the devs -
 
This fix will fail - but can be easily revised to function properly again - if the XML prolog is ever removed from the admin template. For archival/reference purposes, here are the boring details:
 
The IE6 menu-width bug shown above was traced to the use of the XML prolog (<?xml version="1.0"?>), which was added to Dada Mail's default admin template just prior to version 2.9.0. It turns out that this prolog incorrectly switches IE6 into "quirks mode", which breaks Tantek �elik's box model hack.
 
As a fix, Tantek recommends omitting the prolog altogether (scroll to "Addendums"), which we tried and tried. Ultimately, though, that suggestion failed...because while Tantek's hack does get fixed, Dada Mail's IE6 layout breaks in several other, nastier, ways: input-button colors and floats are ignored, checkbox & radio button borders (re)appear, and most importantly, the CSS styling of textareas is ignored completely.
 
So unless (or until!) we find a solution to all those other problems, the XML prolog, although glitchy in its own ways, is here to stay. (In fact, I've asked Justin to add it into the Perl/HTML::Template-generated pages as well, so the button colors & layouts are consistent there too.)
 
My use of the Tan+sam-i-am box model hack to replace the Tantek hack was chosen over the addition of an extra div (scroll to #6) so that those wishing to custom-size other Dada Mail elements at a fixed width have a good example of how to do so without also tweaking the individual templates. I've over-commented the hack in 2.10's default_css.css file for the same reason.
 
 
P.P.S. - The only reason the Tantek hack is so popular is that it was the first one out of the gate. The Tan hack, exquisitely explained at the top of this page, is better in all respects: easier to understand and use, future-proofed in ways that Tantek's isn't, and even a teensy bit smaller. Just so you know. :-)
 
 
 

Post:
mailto:dadadev@PROTECTED

Unsubscribe:
http://mojo.skazat.com/cgi-bin/dada/mail.cgi/u/[list]/

List Information:
http://mojo.skazat.com/cgi-bin/dada/mail.cgi/list/[list]

Archive:
http://mojo.skazat.com/cgi-bin/dada/mail.cgi/archive/[list]

  • This mailing list is a public mailing list - anyone may join or leave, at any time.
  • This mailing list is a group discussion list (unmoderated)
  • Start a new thread, email: dadadev@dadamailproject.com

This is the developer discussion mailing list for Dada Mail.

If you are just looking for support Dada Mail, consult the message boards at:

https://forum.dadamailproject.com

Documentation for Dada Mail:

https://dadamailproject.com/d

Specifically, see the Error FAQ:

https://dadamailproject.com/d/FAQ-errors.pod.html

To post to this list, send a message to:

mailto:dadadev@dadamailproject.com

All subscribers of this list may post to the list itself.

Topics that are welcome:

  • Constructive critiques on the program (I like, "x", but, "y" needs some work - here's an idea on how to make this better...)
  • Bug/Error reports
  • Bug fixes
  • Request For Comments on any changes to the program
  • Help customizing Dada Mail for your own needs
  • Patches
  • Language Translations
  • Support Documentation/Doc editing, FAQ's, etc.
  • Discussion of any changes that you would like to be committed to the next version of Dada Mail -

Dada Mail is on Github:

https://github.com/justingit/dada-mail/

If you would like to fork, branch, send over PRs, open up issues, etc.

Privacy Policy:

This Privacy Policy is for this mailing list, and this mailing list only.

Email addresses collection through this mailing list are used explicitly to work within this email discussion list.

We only collect email addresses through our Closed-Loop Opt-In system.

We don't use your email address for any other purpose.

We won't be sharing your email address with any other entity.

Unsubscription can be done at any time. Please contact us at: justin@dadamailproject.com for any help regarding your subscription, including removal from the mailing list.

All mailing list messages sent from us will include a subscription removal link, which will allow you to remove yourself from this mailing list automatically, and permanently.

All consent to use your email address for any other purpose stated at the time of the mailing list subscription will also be revoked upon mailing list removal.