Skip to content
View in the app

A better way to browse. Learn more.

Web Designer Forum

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

SPRY Drop down menu not aligning in IE 8 . Mozilla OK

Featured Replies

Hi,

 

Re:Drop down menu not aligning in IE 8 . Mozilla OK

 

I have inserted a horizontal menu bar with one submenu. This works fine in chrome and mozilla but not in IE8.

 

The dropdown submenu has 9 lines.

In IE8 the vertical 9 lines are moved to the right into 3 columns of 3 lines with the outside border overflowing to the right.

 

Please see below my css script. Abit messy but i have just started.

 

Any help would be great.

 

------

 

@charset "UTF-8";

/* SpryMenuBarHorizontal.css - version 0.6 - Spry Pre-Release 1.6.1 */

/* 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
{
margin: 0;
list-style-type: none;
font-size: 100%;
cursor: default;
}
/* SET PADDING FOR TOP MENU BAR FROM LEFT. 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: left;
cursor: pointer;
float: left;
margin-top: 0;
margin-right: 0;
margin-bottom: 0;
padding-right: 0px;
padding-left: 0px;
}
/* SET WIDTH TO AUTO FOR TOP MENU TEXT ALIGN, THEN PAD WITH HORIZONTAL a . SUBMENU LEFT PADDING DONE FROM NEW "ul.MenuBarHorizontal li ul li a" .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;
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;
}
/* Menu item containers are same fixed width as parent */
ul.MenuBarHorizontal ul li
{
width: 17em;




background-color: #;
}
/* SUBMENUS COLOUR (NON HOVER) AND WIDTH - colour for submenu bg and sub menu width. should appear slightly overlapping to the right (95%) and up (-5%) */
ul.MenuBarHorizontal ul ul
{
position: relative;
width: 10em;
margin-top: 0%;
margin-right: 0;
margin-bottom: 0;
margin-left: 100%;
}
/* 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: auto;
top: 0;
}

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

DESIGN INFORMATION: describes color scheme, borders, fonts

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

/* Submenu containers have borders on all sides */
ul.MenuBarHorizontal ul
{
border: 1px solid #CCC;
}
/* Menu items are a light gray block with padding and no text decoration */
ul.MenuBarHorizontal a
{
display: block;
cursor: pointer;
color: #FFF;
text-decoration: none;
font-family: Verdana, Geneva, sans-serif;
font-size: 12px;
font-weight: 500;
background-position: right center;
padding-top: 14px;
padding-right: 1em;
padding-bottom: 0em;
padding-left: 0.5em;
height: 25px;
background-image: url(../images/topmenugreybutton.png);
}
/* OK.TOPMENU BG COLOUR(NON SUBMENU OR HOVER STATE), ul.MenuBarHorizontal a = sets TOPMENU COLOUR AND TEXT, PADDING etc */
ul.MenuBarHorizontal a:hover, ul.MenuBarHorizontal a:focus
{
color: #FFF;
background-color: #F00;
background-image: url(../images/SUBmenuyellow.png);
}
/* TOP MENU HOVER (ALSO SET BELOW UL.),BORDERS, 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
{
color: #333;
background-image: url(../images/SUBmenuyellow.png);
}

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

BG AND TEXT COLOUR FOR MOUSE OVER FOR TOP MENU AND SUBMENU 

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

/* 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-position: right center;
background-image: url(../images/topmenugreybutton.png);
}
/* COLOUR FOR TOP MENU (NON HOVER STATE) CONTAINING A SUBMENU -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-position: 95% 50%;
}
/* OK, TOP MENU HOVER CONTAINING SUB MENU - 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-position: 95% 50%;
background-repeat: repeat;
background-image: url(../images/SUBmenuyellow.png);
}
/* TOP LEVEL HOVER FOR IETMS WITH SUBMENU -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-repeat: repeat;
background-position: 95% 50%;
background-color: #00F;
}

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

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;
filter:alpha(opacity:0.1);
}
/* 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: left;
background: #FFF;
}
}
ul.MenuBarHorizontal li ul li a {
color: #666;
margin-left: 0px;
border-right-style: none;
background-image: url(../images/LIGHTGREYbutton.png);
height: 10px;
padding-bottom: 6px;
font-size: 11px;
border-bottom-style: none;
}
/* OK, SUBMENU COLOUR ((WITH IMAGE) IN NON HOVER STATE, LINE HEIGHT, PAD TEXT 6PX AT BOTTOM*/

 

 

 

-------

Regards,

 

Richard.

Edited by Renaissance-Design
Please use the code button or tags to format your code.

Best advice I can possibly give you is: get rid of it. It uses ugly parsing hacks that came off the Ark; it's a much better idea to fully grasp dropdowns yourself. Start here.

 

If you personally write every line of CSS you'll have a much better idea of how they're all interacting and you'll be able to troubleshoot better.

 

Edit: a warning though. The Javascript in that article is a little out of date, and is only meant to target IE6. It'll work just fine without it on IE7+.

Edited by Renaissance-Design

  • Author

Best advice I can possibly give you is: get rid of it. It uses ugly parsing hacks that came off the Ark; it's a much better idea to fully grasp dropdowns yourself. Start here.

 

If you personally write every line of CSS you'll have a much better idea of how they're all interacting and you'll be able to troubleshoot better.

 

Edit: a warning though. The Javascript in that article is a little out of date, and is only meant to target IE6. It'll work just fine without it on IE7+.

 

Chris,

 

thank you for replying. I agreed about writing CSS myself, it will help me in the long run.

 

Many thanks,

 

richard

Create an account or sign in to comment

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.