Register FAQ Members List Calendar Search Today's Posts Mark Forums Read
 

Go Back   XSL - XML - RSS Forums > Programming and XML > Ajax and XML

Tags:



Reply
 
LinkBack Thread Tools Display Modes
  #1 (permalink)  
Old 07-09-2008, 12:26 AM
art270
 
Posts: n/a

Default IE6 Horizontal Submenu Shift -- help



Going out of my mind on this one.

I installed a horizontal spry menu bar in a site I'm working on. As usual,
things look fine in FF and Safari on the Mac, but try as I may, I cannot get
the drop downs to appear directly below the main menu. They all shift over to
the right about 50%.

I have upgraded my spry to 1.6.1. I have tinkered until my typing fingers
bled. I cannot make this thing work. Please help.

Here's the site: http://staging.natlands.org/ssi/ssi_header_03.html

Here's the CSS:

@charset "UTF-8";

/* SpryMenuBarHorizontal.css - Revision: Spry Preview Release 1.4 */

/* Copyright (c) 2006. Adobe Systems Incorporated. All rights reserved. */


/************************************************* ******************************

LAYOUT INFORMATION: describes box model, positioning, z-order


************************************************** *****************************/

/* The outermost container of the Menu Bar, an auto width box with no margin
or padding */
ul.MenuBarHorizontal
{
list-style-type: none;
font-size: 11px;
cursor: default;
font-family: Verdana, Arial, Helvetica, sans-serif;
font-weight: bold;
margin: 0;
width: auto;
padding-top: 0;
padding-right: 0;
padding-bottom: 0;
padding-left: 0;
}

#MenuBar1 {
width: 537px;
height: 30px;
padding-left: 0px;
display: inline;
margin: 0px;
float: none;
}
#MenuBar1 a {
color: #FFFFFF;
}
/* Set the active Menu Bar with this class, currently setting z-index to
accomodate IE rendering bug:
http://therealcrisp.xs4all.nl/meuk/IE-zindexbug.html */
ul.MenuBarActive
{
z-index: 1000;
}
/* Menu item containers, position children relative to this container and are
a fixed width */
ul.MenuBarHorizontal li
{
list-style-type: none;
font-size: 100%;
position: relative;
text-align: center;
cursor: pointer;
width: 107px;
float: left;
margin-top: 0;
margin-right: 0;
margin-bottom: 0;
margin-left: 0;
padding-top: 0;
padding-right: 0;
padding-bottom: 0;
padding-left: 1px;
}

/* Submenus should appear below their parent (top: 0) with a higher z-index,
but they are initially off the left side of the screen (-1000em) */
ul.MenuBarHorizontal ul
{
margin: 0;
padding: 0;
list-style-type: none;
font-size: 100%;
z-index: 1020;
cursor: default;
width: 107px;
position: absolute;
left: -1000em;
}
/* Submenu that is showing with class designation MenuBarSubmenuVisible, we
set left to auto so it comes onto the screen below its parent menu item */
ul.MenuBarHorizontal ul.MenuBarSubmenuVisible
{
left: auto;
position: absolute;
}
/* Menu item containers are same fixed width as parent */
ul.MenuBarHorizontal ul li
{
width: 107px;
font-size: 9px;
}
/* Submenus should appear slightly overlapping to the right (95%) and up (-5%)
*/
ul.MenuBarHorizontal ul ul
{
position: relative;
margin-top: -5%;
margin-right: 95%;
margin-bottom: 0;
margin-left: 0;
}
/* Submenu that is showing with class designation MenuBarSubmenuVisible, we
set left to 0 so it comes onto the screen */
ul.MenuBarHorizontal ul.MenuBarSubmenuVisible ul.MenuBarSubmenuVisible
{
left: 0px;
top: 0;
}


/************************************************* ******************************

DESIGN INFORMATION: describes color scheme, borders, fonts


************************************************** *****************************/

/* Submenu containers have borders on all sides */
ul.MenuBarHorizontal ul
{
}
/* Menu items are a light gray block with padding and no text decoration */
ul.MenuBarHorizontal a
{
display: block;
cursor: pointer;
background-color: #006666;
color: #FFFFFF;
text-decoration: none;
padding-top: 2px;
padding-right: 0em;
padding-bottom: 2px;
padding-left: 0em;
}
/* Menu items that have mouse over or focus have a blue background and white
text */
ul.MenuBarHorizontal a:hover, ul.MenuBarHorizontal a:focus
{
background-color: #CC6600;
color: #FFF;
text-decoration: none;
}
/* Menu items that are open with submenus are set to MenuBarItemHover with a
blue background and white text */
ul.MenuBarHorizontal a.MenuBarItemHover, ul.MenuBarHorizontal
a.MenuBarItemSubmenuHover, ul.MenuBarHorizontal a.MenuBarSubmenuVisible
{
background-color: #CC6600;
color: #FFF;
}


/************************************************* ******************************

SUBMENU INDICATION: styles if there is a submenu under a given menu item


************************************************** *****************************/

/* Menu items that have a submenu have the class designation
MenuBarItemSubmenu and are set to use a background image positioned on the far
left (95%) and centered vertically (50%) */
ul.MenuBarHorizontal a.MenuBarItemSubmenu
{
background-image: url(SpryMenuBarDown.gif);
background-repeat: no-repeat;
background-position: 95% 50%;
}
/* Menu items that have a submenu have the class designation
MenuBarItemSubmenu and are set to use a background image positioned on the far
left (95%) and centered vertically (50%) */
ul.MenuBarHorizontal ul a.MenuBarItemSubmenu
{
background-image: url(SpryMenuBarRight.gif);
background-repeat: no-repeat;
background-position: 95% 50%;
}
/* Menu items that are open with submenus have the class designation
MenuBarItemSubmenuHover and are set to use a "hover" background image
positioned on the far left (95%) and centered vertically (50%) */
ul.MenuBarHorizontal a.MenuBarItemSubmenuHover
{
background-image: url(SpryMenuBarDownHover.gif);
background-repeat: no-repeat;
background-position: 95% 50%;
}
/* Menu items that are open with submenus have the class designation
MenuBarItemSubmenuHover and are set to use a "hover" background image
positioned on the far left (95%) and centered vertically (50%) */
ul.MenuBarHorizontal ul a.MenuBarItemSubmenuHover
{
background-image: url(SpryMenuBarRightHover.gif);
background-repeat: no-repeat;
background-position: 95% 50%;
}


/************************************************* ******************************

BROWSER HACKS: the hacks below should not be changed unless you are an expert


************************************************** *****************************/

/* HACK FOR IE: to make sure the sub menus show above form controls, we
underlay each submenu with an iframe */
ul.MenuBarHorizontal iframe
{
position: absolute;
z-index: 1010;
}
/* HACK FOR IE: to stabilize appearance of menu items; the slash in float is
to keep IE 5.0 from parsing */

@media screen, projection
{
ul.MenuBarHorizontal li.MenuBarItemIE
{
display: inline;
f\loat: none;
background: #FFF;
margin-top: 1px;
}
}


Here's the current CSS.

Reply With Quote
Sponsored Links
  #2 (permalink)  
Old 07-24-2008, 05:23 PM
Niko974
 
Posts: n/a

Default Re: IE6 Horizontal Submenu Shift -- help

I don't know if you still have this problem.

Just add this in the right section:

ul.MenuBarHorizontal ul
{
margin: 0;
padding: 0;
}


Reply With Quote
  #3 (permalink)  
Old 07-29-2008, 01:34 AM
jk_2012_b
 
Posts: n/a

Default Re: IE6 Horizontal Submenu Shift -- help

Hi art270,
I feel your pain. I am having the same exact issue with my horizontal spry
menu bar. In IE the submenus shift 50% over to the right. I noticed that the
page you linked to in your post is working. What did you do to fix it?

Reply With Quote
  #4 (permalink)  
Old 07-30-2008, 02:27 AM
art270
 
Posts: n/a

Default Re: IE6 Horizontal Submenu Shift -- help

I actually bailed on the Dreamweaver spry solution and installed something else
recommended to me by a programmer. He sent me here:

http://javascript-array.com/scripts/...rop_down_menu/

Works like a dream and is MUCH simpler to style.



Reply With Quote
  #5 (permalink)  
Old 07-30-2008, 02:27 AM
jk_2012_b
 
Posts: n/a

Default Re: IE6 Horizontal Submenu Shift -- help

Very cool. This will work like a charm. Thanks for the help!
Reply With Quote
  #6 (permalink)  
Old 08-19-2008, 08:46 PM
Junior Member
 
Join Date: Aug 2008
Posts: 1

Default Why this is happening

hey guys, I felt that it was worth my while to create a login for this site to reply. I had read this forum while looking for a fix to why the entire menu shifts when i resize my window then jumps back into place when i hover over it, anyways that a diff problem and moral to the story is I ended up with the same problem you guys had later on and found out that by center aligning text in ul.MenuBarHorizontal li will cause the submenus to also reposition. So simply live with left justified is my temporary solution.
Reply With Quote
  #7 (permalink)  
Old 08-22-2008, 07:49 PM
Junior Member
 
Join Date: Aug 2008
Posts: 1

Default Solution with CENTER

Alright everyone...i was having the same issue and when i went back and changed ul.MenuBarHorizontal li to left i noticed that it fixed my problem AND my text was still centered in both my main menu bar and my submenu bar. Here is why. Make sure that you have the following:

ul.MenuBarHorizontal li text-align:left (from esmullen)

then make sure you have:

ul.MenuBarHorizontal a text-align:center

This worked for me so hopefully it works for you! Good Luck!
Reply With Quote
Reply


Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On



Contact Us -|- XSL - XML - RSS Forums -|- Archive -|- Top -|-Rules/Disclaimer-|-Help/Support -|-Advertise
© Camley Interactive (camley.info) 2008 - all logos and images are copywrite their respective owners.
Proud member of the Camley Interactive Network
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.1.0 ©2007, Crawlability, Inc.
All times are GMT. The time now is 10:16 PM.
Style Developed by Epic Designz