menus mit IE 7

Status
Nicht offen für weitere Antworten.

Nabi

Erfahrenes Mitglied
Hallo, Ich habe folgendes Problem, mein Menu funktioniert nicht
mit Internet Explorer 7, aber es funktioniert mit IE 6 und Mozilla, ich möchte dieses Menu auch mit IE 7 funktionsfähig
sein, hat jemand eine Idee?


hier ist der Code:

zuerst HTML :
HTML:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<link rel="stylesheet" type="text/css" href="info.css">
<title>Menu Test With Explorer 7
</title>
</head>
<body>

<?php
$menu=file_get_contents("1.txt");
echo "
<div id=\"navi\">
<a href=\"#\">Hallo<span class=\"showcase\">$menu</span></a></div>";
?>

</body>
</html>

text dokument 1.txt :
Code:
<table cellspacing="0" cellpadding="0" >
<tr>
<td><a href="#">in Table</a></td>
</tr>
</table>

und info.css :
Code:
#navi {
float: left;
width:auto;
}

#navi a {
color:blue;

}

#navi a:hover {
color:green;
background:none;
}

#navi a .showcase {
display:none;
}

#navi a:hover .showcase {
display:block;
background:#dddddd;
margin-top:-2px;
}

body
{
  margin: 0px;
  padding: 0px;
}

Danke in voraus
 
Zuletzt bearbeitet:
Hi,

also du machst innerhalb von einem Link eine Tabelle rein, welche wieder ein Link hat.
Dieser Link erscheint laut css nur, wenn du über den ersten Link (Hallo) fährst.
Bist du ausserhalb von "hallo" verschwindet es wieder.

Allerdings ist sowas absolut nicht konform!
Und man bindet eine Datei auch nicht wirklich mit file_get_contents() ein, sondern mit zb. include().

Was hast du denn letztendlich wirklich mit dem Menu vor, sprich wie soll es aussehen.
 
Hi

Warum eigentlich so umständlich und nicht per CSS ein Menu erstellen?

Muss es unbedingt in PHP sein? Und ein Link ist denke ich mal kein Menu.

Peter
 
also du machst innerhalb von einem Link eine Tabelle rein, welche wieder ein Link hat.
Dieser Link erscheint laut css nur, wenn du über den ersten Link (Hallo) fährst.
Bist du ausserhalb von "hallo" verschwindet es wieder.

verschwindet wird nur bei IE7
 
Es ist trotzdem nicht kein valids (x)html was du verwendest.

Jag deine Seite mal durch einen Validator dann wirst du es sehen.
Ein Link, darf keine Tabellen enthalten.
 
Hallo Nabi!

Ich hatte das gleiche Problem, habe es über die Doctype gelöst. Probiere mal:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">

Fragt mich nicht warum, aber es hat funktioniert. Obwohl das für mich nicht wirklich nachvollziehbar ist.

Ciao,
Mario
 
Es ist ja okay, wenn du Tabellen verwendest, wobei dies nicht mehr zeitgemäß ist.
Ich würde ne Navigation fast immer mit <ul> und <li> gestalten.

Was ich bei dir kritisiere ist, dass du dein Menu innerhalb eine a-Tags einfügst.
Sprich

HTML:
<a href="#">Hallo
  <span class="showcase">
/** ab hier kein valides html ********************************/
    <table cellspacing="0" cellpadding="0" >
      <tr>
        <td><a href="#">in Table</a></td>
      </tr>
    </table>
/*** ENDE ***************************************************/
  </span>
</a>
 
Hier ist die Lösung :

Jetzt Funktioniert mit Mozilla , IE 6 und 7

die Änderung ist in CSS :

Code:
#navi {
float: left;
width:auto;
}

#navi a {
color:blue;

}

#navi a:hover {
color:green;
background:none;
}

div#navi a  .showcase {
display:none;
}

div#navi:hover  .showcase {
display:block;
background:#dddddd;
margin-top:-2px;
}

div#navi a:hover  .showcase {
display:block;
background:#dddddd;
margin-top:-2px;
}

body
{
  margin: 0px;
  padding: 0px;
}

und auch :
<!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN">
 
Zuletzt bearbeitet:
Status
Nicht offen für weitere Antworten.
Zurück