We launched new forums in March 2019—join us there. In a hurry for help with your website? Get Help Now!
    • 29525
    • 388 Posts

    I’m stuck trying to get IE to properly display the flyout menu I created using Wayfinder and the CSSPlay Flyout CSS.

    http://www.cssplay.co.uk/menus/flyoutt.html

    I’ve used this menu outside of MODX before with good success, however, I’m stuck here. This is working perfectly in Firefox and Safari. However, in IE 6 & 7 there are problems with appearance and the flyout.

    I’ve dealt with cross browser issues like this before and have found using CSS Reset style sheet to be of great help. I’ve used one here as well in the head section of my template. I’ve also included the conditional statements in the head section. When I view the source of the page as rendered in my browser I see the conditional statements imbedded in the menu code, so that appears to be working.

    I’m not sure what else to check. Any suggestions?
      www.terrybarthdesign.com
      • 29525
      • 388 Posts

      Oops here’s the page with the menu I’ve created that’s not working in IE.

      http://www.terrybarthdesign.com/JohnD/index.php?id=9
        www.terrybarthdesign.com
        • 29525
        • 388 Posts
        Can anybody offer any help on this?
          www.terrybarthdesign.com
          • 5091
          • 332 Posts
          Hi, just some tips, not a solution for you smiley

          I looked at your page yesterday in IE when I had my Parallels running in my Mac box, but I was fighting my own IE’s problem  therefor really din’t want to place your problem on my IE’s plate.

          Anyway, these are what I think the problems you have:   1) the overlapping is the z-index issue. Try assign higher value for the sub menu, you can use it in condition comments (cc) for IE; 2) re-work the width and padding for first level menu in IE7 (cc again!), IE likes padding better than Margin when you try to use these two elements for positioning. 3) you need a hasLayout for IE 6 because the second and third menu has a gap. Declaring something like ’height: 100%’ or "zoom: 100%" might help in the li (#menu li for instance).

          p/s. This is a CSS problem, not Modx, not Wayfinder. If you are after a please-fix-my-problem response , CSS-D is a better place as some very kind and generous souls there always run extra miles to fix others’ members problem.
            • 29525
            • 388 Posts
            Chinesedream

            Thank you so much for taking a look at this.

            I am assuming this a problem with how I’ve implemented this within MODx because I have recreated a menu outside of MODx using these CSS files where it works perfectly in all browsers. I would assume that If I copy those CSS files exactly and reference them from my template head section. This should work? What am I missing?

            CSS files from: http://www.cssplay.co.uk/menus/flyoutt.html
              www.terrybarthdesign.com
              • 7455
              • 2,204 Posts
              try using the flyout refised version
              works much better and is already included in wayfinder as a config

              just call wayfinder like this and go from there using firebug or webdevelopertool in ff to edit css

              [!Wayfinder? &config=`cssplay-flyoutrev`!]

              this version does not use 2 seperate css but just one

              dimmy
                follow me on twitter: @dimmy01
                • 29525
                • 388 Posts
                Dimmy

                Thank you so much for helpping me. I’ve spent way too many hours on this. But I’m still really confused.

                I replaced my wayfinder call with the one you provided: [!Wayfinder? &config=`cssplay-flyoutrev`!] The menu disappeared.

                So I checked to see if I had a chunk called cssplay-flyoutrev. I didn’t. So went to the wayfinder examples and then to revisited flyout: http://www.muddydogpaws.com/development/wayfinder/examples/example-6.html

                I don’t see the call you specified in the example. Am I in the wrong place? Where do I get the chunks and the CSS for this?

                I believe I have the css. I got it from the example page I mentioned above. Is that right?

                I also don’t see the &config parameter anywhere on the wayfinder documentation: http://www.muddydogpaws.com/development/wayfinder/parameters.html

                I have been searching the forms, the documentation, the Wiki, Woogle to no end. I’m struggling to piece this together. How do I know where to find this stuff?

                Your help is really unappreciated!

                Terry
                  www.terrybarthdesign.com
                  • 5091
                  • 332 Posts
                  Hi, Dimmy’s suggestion is good if it’s wayfinder problem.

                  However, the problem you are facing is really a CSS problem. What am I missing, you asked. and why the same menu works  in the CSS play? Why it works in other site you did before  but not this one? First of all, your CSS code (not just the flyouout.css) suffers fundamental issue in IE browsers.

                  A quick look at your html source code and the style2.css, first you have the "</style>"  comes from no where in the <head>. That may not be the cause but  with the combination of transitional doctype it might as well throw IEs into quirks mode thus creating unexpected problems. Also, I see bloody IE hacks in the "flyout.css" targeting for IEs. Put asides it’s a bad practice, but the fact that if your page is thrown to Quirks mode, it affects IE 6 and 7 and these hacks may not work as it should.

                  There is no logic and answers as to why IE behaves such and such in this layout, yet not other layout, because it’s a combination of elements you declared in your CSS. A ’position: relative’ or a missing width somewhere will throw IE into whacks. Translation? IE needs hasLayout.

                  I didn’t check your style2.css when I jumped right in to fix the problem in IE 6, and with these codes adding to ’flyout_ie.css", the problem goes away immediately.

                  table {border-collapse:collapse; border:0; margin:0 0 0 42px; padding:0;position: relative;z-index: 500;}
                  .menu ul li {height: 100%;}

                  But it doesn’t work in IE 7 because the "flyout_ie.css", because it specifically targeting IE 6 and below by your command:
                  <!--[if lte IE 6]>
                  <link rel="stylesheet" media="all" type="text/css" href="assets/css/flyout_ie.css" />
                  <![endif]-->

                  However the same rules work for IE 6 doesn’t work for IE 7, and I spent almost another 30 minutes tweaking the menu for this bloody browser, only to find out the problem is not so much with the descendents of .menu but a bigger problem with other CSS element.

                  First and foremost, it’s *the* best practice to declare ’width’ for floated elements. You are using ’.menu’ as left column, which is fine, but it’s not when you don’t add a width - IE doesn’t like it, period.  Secondly, I always think it’s the *worst* to declare one column floated, and the other (second column) be decided by the browsers. In my early year of CSS learning, I went through lots of grief and frustrations because many CSS layout tutorials use this technique and I was misguided by these tutorials. This is what I am seeing with your 2 columns layout.

                  left column:
                  .menu {
                    z-index:1000;
                    font-size:90%;
                    float: left;
                    margin:0px ; /* this page only */
                  }

                  right column:
                  #content { padding: 30px 10px 10px 160px; border: 1px solid #484F3c; background: #CDCFC0; }

                  it actually amazes me that the declaration of your #container holds the page together and be centered
                  #container {margin: 3%; }

                  Back to your menu’s problem. CSSplay uses this :

                  .menu ul {
                  padding:10px;
                  margin:0;
                  list-style-type:none;
                  width:140px;
                  }

                  10% padding in the UL  to gain spacings (gutters) is perfectly fine, but it doesn’t with your layout, because you use ’.menu’ as left column and no width, no float declared in the #content, the right (or second) column. When I started to fix the problem in IE, the right column’s content is being overlap with menu.

                  The better approach should be something like this:

                  .menu {
                    z-index:1000; /*remove z-index. it only works with absolute and relative position, you don’t need it here */
                    font-size:90%;
                    float: left;
                    width: 140px
                    margin:10px ;
                  }

                  #content { float: right; width: add-your-desire-value }
                  #container {width:total-value-is values of .menu + content }

                  and

                  .menu ul {
                  padding:0;
                  margin:0;
                  list-style-type:none;
                  width:140px;
                  }

                  I hope IE7  will behave normal like other browsers once you make these changes and that it doesn’t affect the added code I have for IE6, and I hope these are good pointers enough for you to fix other little problem it may occurs.  laugh

                  Now really must get back to my work.

                    • 7455
                    • 2,204 Posts
                    Quote from: Terry at Feb 07, 2008, 05:39 PM

                    Dimmy

                    Thank you so much for helpping me. I’ve spent way too many hours on this. But I’m still really confused.

                    I replaced my wayfinder call with the one you provided: [!Wayfinder? &config=`cssplay-flyoutrev`!] The menu disappeared.

                    So I checked to see if I had a chunk called cssplay-flyoutrev. I didn’t. So went to the wayfinder examples and then to revisited flyout: http://www.muddydogpaws.com/development/wayfinder/examples/example-6.html

                    I don’t see the call you specified in the example. Am I in the wrong place? Where do I get the chunks and the CSS for this?

                    I believe I have the css. I got it from the example page I mentioned above. Is that right?

                    I also don’t see the &config parameter anywhere on the wayfinder documentation: http://www.muddydogpaws.com/development/wayfinder/parameters.html

                    I have been searching the forms, the documentation, the Wiki, Woogle to no end. I’m struggling to piece this together. How do I know where to find this stuff?

                    Your help is really unappreciated!

                    Terry

                    Configs are files on your server in the wayfinder folder, there is a folder called configs
                    a config file contains aal the chunks and parameters used for wayfinder to make the menu.
                    you need the latest version or at least version 2

                    I posted a config for dropdown here:
                    http://modxcms.com/forums/index.php/topic,21949.0.html

                    rambat made a fully commented example.config.php file:
                    http://modxcms.com/forums/index.php/topic,18133.0.html

                    once you discover the power of config packs you do not want to use any other way.

                    Dimmy
                      follow me on twitter: @dimmy01
                      • 29525
                      • 388 Posts
                      Dimmy

                      Thank you! I will study this and see what I can do. Stay tuned!

                      P.S. I just reread my earlier posting to you and realized I made an very unfortunate typo. I said "Your help is really unappreciated!" Of course I’m completely embarrased that. . . I hope you realized I was just typing too fast. You’ve been very very helpful. Thank you!
                        www.terrybarthdesign.com