IE 8 zeigt mein SpryMenüLeiste falsch an bin am verzweifeln

willenium

Grünschnabel
Hallo liebe Leute,

ich bin kurz vor verzweifeln da ich das Problem habe das meine Spry Menüleiste im Internet Explorer 8 falsch dargestellt wird.
Kommischerweise kommen alle anderen Browser z.B. Firefox es hin die Seite korrekt darzustellen.

Die Seite gibts unter http://www.sus-isselburg.de/test/index.html zu sehen.

Beim Internet Explorer 8 wird ein grauer Balken über dem Menü gezeigt sowie der dünne graue Rahmen um das Menü fehlt.

Kann mir jemand helfen wie ich das hinbekomme.

Danke schonmal im vorraus

HTML Code der Seite:
HTML:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Unbenanntes Dokument</title>

<style type="text/css">
<!--
.Stil1 {font-family: Arial}
.Stil3 {font-family: Arial; font-size: 12px;}
body {
	background-image: url();
	background-repeat: repeat-x;
}
-->
</style>
<script src="SpryAssets/SpryMenuBar.js" type="text/javascript"></script>
<link href="SpryAssets/SpryMenuBarHorizontal.css" rel="stylesheet" type="text/css" />
<link href="SpryAssets/SpryMenuBarVertical.css" rel="stylesheet" type="text/css" />
</head>

<body>
<table width="58" height="39" border="0" align="right" cellpadding="0" cellspacing="0">
  <tr>
    <td><ul id="MenuBar1" class="MenuBarVertical">
      <li><a href="start.html" target="mainFrame" class="Stil1">Start</a> </li>
      <li><a href="unternehmen.html" target="mainFrame" class="Stil1">Unternehmen</a></li>
      <li><span class="Stil1"><a href="bleiverglasungen.html" target="mainFrame">Bleiverglasungen</a> </span> </li>
      <li><a href="eisblumenglas.html" target="mainFrame" class="Stil1">Eisblumenglas</a></li>
      <li><a href="schleifarbeiten.html" target="mainFrame" class="Stil1">Schleifarbeiten</a></li>
      <li><a href="sandstrahldekor.html" target="mainFrame" class="Stil1">Sandstrahldekor</a></li>
      <li><a href="isolierglas.html" target="mainFrame" class="Stil1">Isolierglas</a></li>
      <li><a href="glasmalerei.html" target="mainFrame" class="Stil1">Glasmalerei</a></li>
      <li><a href="reparaturarbeiten.html" target="mainFrame" class="Stil1">Reparaturarbeiten</a></li>
      <li><a href="gewoelbtescheiben.html" target="mainFrame" class="Stil1">Gew&ouml;lbte Scheiben</a></li>
      <li><a href="kontakt.html" target="mainFrame" class="Stil1">Kontakt</a></li>
      <li><a href="impressum.html" target="mainFrame" class="Stil1">Impressum</a></li>
    </ul></td>
  </tr>
</table>

<script type="text/javascript">
<!--
var MenuBar1 = new Spry.Widget.MenuBar("MenuBar1", {imgRight:"SpryAssets/SpryMenuBarRightHover.gif"});
//-->
</script>
</body>
</html>






SpryMenuBarHorizontal.css Quellcode
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
{
	margin: 0;
	padding: 0;
	list-style-type: none;
	font-size: 100%;
	cursor: default;
	width: auto;
}
/* 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
{
	margin: 0;
	padding: 0;
	list-style-type: none;
	font-size: 100%;
	position: relative;
	text-align: left;
	cursor: pointer;
	width: 8em;
	float: left;
}
/* 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: 8.2em;
	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: 8.2em;
}
/* Submenus should appear slightly overlapping to the right (95%) and up (-5%) */
ul.MenuBarHorizontal ul ul
{
	position: absolute;
	margin: -5% 0 0 95%;
}
/* 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;
	background-color: #EEE;
	padding: 0.5em 0.75em;
	color: #333;
	text-decoration: none;
}
/* 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: #33C;
	color: #FFF;
}
/* 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: #33C;
	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: left;
		background: #FFF;
	}
}
 
Zuletzt bearbeitet von einem Moderator:
Moin,

der graue Balken oberhalb des Menüs ist sein dünner graue Rahmen, der es nicht in seiner vollständigen Höhe umschließt :)

Die Ursache hierfür steckt in dieser Regel des Stylesheets "http://www.sus-isselburg.de/test/SpryAssets/SpryMenuBarVertical.css":
CSS:
/* 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.MenuBarVertical li.MenuBarItemIE
        {
        f\loat: left;
        display: inline;
        }
}
die für den IE8 nicht benötigt wird.

Mittels dem "Star-HTML-Hack" ist diese Regel nun nur noch dem IE6 (und älter) zugänglich:
CSS:
/* HACK FOR IE: to stabilize appearance of menu items; the slash in float is to keep IE 5.0 from parsing */
@media screen, projection
{
        * html ul.MenuBarVertical li.MenuBarItemIE
        {
        f\loat: left;
        display: inline;
        }
}

Übrigens hast du hier in deinem Post den CSS-Code für das horizontale Spry-Menü vorgestellt, obwohl das Vertikale zum Einsatz kommt, und in deiner Seite sogar beide CSS-Varianten implementiert.

mfg Maik
 
Zurück