CSS Navigation Problem

  • Themenstarter Themenstarter Ankert
  • Beginndatum Beginndatum
Status
Nicht offen für weitere Antworten.
A

Ankert

Hallo zusammen,
hab nu lange an meinem Problem rumgebastelt und find irgendwie keinen Fehler. Und zwar hab ich meine Page in 3 Div Bereiche geteilt, im linken div soll die Navigation sitzen, klappt auch schon fast nur irgendwie wird die Navigation leicht nach rechts unten verschoben, sodass das div total komisch unförmig aussieht.
Hier meine Quelltexte:

index.php

PHP:
<!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" xml:lang="de" lang="de" >
<head>
<title>Bildergalerie</title>

<link rel="stylesheet" href="css/slimbox.css" type="text/css" media="screen,projection" />
<link rel="stylesheet" href="../inc/stile.css" type="text/css" media="screen,projection" />



<script type="text/javascript" src="js/mootools.js"></script>
<script type="text/javascript" src="js/slimbox.js"></script>

</head>

<body>

<?php
// Galerien ermitteln
$verzeichnisse = glob( "galerien/*", GLOB_ONLYDIR );
readfile ('../inc/head.inc.php');
include ('../inc/nav.inc.php');

// Galerie anzeigen
if (isset( $_GET['galerie'] ) )
{
    echo '<div id="inhalt"><h1>';
	echo $_GET["galerie"];
	echo '</h1>';
	$break = 1;
	$bilder = glob( "galerien/{$_GET['galerie']}/thumbs/*.jpg" );
	natsort( $bilder );
	foreach ($bilder as $bild)
	{
		$bild = array_pop( explode( "/", $bild ) );
		echo '<a href="galerien/' .$_GET['galerie']. '/images/' .urlencode( $bild ). '" rel="lightbox[demoscript]" title="&lt;a href=\'download.php?get=galerien/' .$_GET['galerie']. '/images/' .urlencode( $bild ). '\'&gt;&lt;/a&gt;" class="thumb"><img src="galerien/' .$_GET['galerie']. '/thumbs/' .$bild. '" /></a>';
		echo ($break % 3 == 0) ? "<br />\n" : "";
		$break++;
	}
	echo '</div>';
}
?>

</body>
</html>

nav.inc.php

PHP:
<?
echo "<div id='nav'>";
echo '<ul id="nav">';
echo '<li><a href="#">Home</a><br>';
echo '</li>';
echo '<li><a href="#">Annika</a><br>';
echo '</li>';
echo '<li><a href="#">Alexander</a><br>';
echo '</li>';
echo '<li><a href="#">Zwombies</a><br>';
echo '</li>';
echo '<li><a href="#">Zwombies</a><br>';
echo '</li>';
echo '<li><a href="#">Leo</a><br>';
echo '</li>';
echo '<li><a href="#">Bildergalerie</a><br>';
     echo '<ul>';
          echo '<li>submenu 4.1</li><br>';
          echo '<li>submenu 4.2</li><br>';
          echo '</ul>';
    echo '</li>';
echo '<li><a href="#">Impressum</a><br>';
echo '</li>';
echo '</ul>';

stile.css
PHP:
body {
background-image:url(../pics/bg.gif);
}
#nav {
background-image:url(../pics/bg.png);
float : left;
width : 200px;
position: absolute;
top: 150px;
left: 10px;
width: 160px;
height: 300px;
}

#kopf {
  background-image:url(../pics/bg.png);
  height: 100px;
  width: 700px;
  left: 10px;
text-align:center;
font-size: 30px;
font-weight: bold;
text-decoration: underline;
font-variant: small-caps;
letter-spacing: 0pt;
word-spacing: -2.8pt;
line-height: 1.6;


}
#inhalt {
  width: auto;
  margin: 0px 180px;
  width: 500px;
  float : left;
}

ul {
  margin: 0;
  padding: 0;
  list-style-type: none;
}

ul, li {
  display: inline;
}

ul#nav li ul {
  display: none;
}

ul#nav li:hover ul {
  display: inline;
}

ul#nav li a {
  background: #e3e3e3;
  font-weight: bold;
  color: #000;
  text-decoration: none;
}

Ich denke mal dass sind die ENtscheidenden Codes.

Zweites Problem was ich habe, ich habe keinerlei Plan, wie ich es schaffe, dass die verschiedenen Galerien in der Navigation in den Submenu Leisten angezeigt werden.

Wäre echt klasse wenn ihr mir helfen könntet.
LG
Alexander
 
Hi,
hab nu lange an meinem Problem rumgebastelt und find irgendwie keinen Fehler. Und zwar hab ich meine Page in 3 Div Bereiche geteilt, im linken div soll die Navigation sitzen, klappt auch schon fast nur irgendwie wird die Navigation leicht nach rechts unten verschoben, sodass das div total komisch unförmig aussieht.
Mir ist dieser Fehler direkt beim ersten Überflug deines Codes ins Auge gestochen ;-)

Du rufst im HTML-Code den ID-Bezeichner #nav zweimal auf, womit die Browser den CSS-Deklarationsblock #nav { ... } auf das <div id="nav">- und <ul id="nav">-Element anwenden.

Ein ID-Bezeichner darf im HTML-Dokumentbaum aber nur einmalig vergeben werden.

In "nav.inc.php" existiert aber noch ein weiterer Fehler mit dem fehlenden schliessenden </div>-Tag für den DIV-Block #nav.

Zweites Problem was ich habe, ich habe keinerlei Plan, wie ich es schaffe, dass die verschiedenen Galerien in der Navigation in den Submenu Leisten angezeigt werden.
Kann das Problem nicht nachvollziehen, denn da existiert doch solch ein Submenü, das per CSS zunächst versteckt, und beim Überfahren des Hauptmenüpunktes angezeigt wird.

mfg Maik
 
Herzlichen Dank:)
Saudummer Fehler, naja is nach über einem Jahr die erste Homepage die ich wieder programmiere;)
Nu muss ich nurnoch die Lösung für Problem zwei finden, aber ich glaub ich bin auf nem guten weg^^

Achso sry nochmal genaue Erklärung meines zweiten Problems.
Ich habe folgende Ordnerstruktur:
Rootverzeichnis
-pics(für Hintergrundbilder Banner usw.)
-inc (alle include Dateien
-bilder(mein Galeryscript)
-css
-js
-galerien
-Galeriename1
-images
-thumbs
-Galeriename2
-images
-thumbs
-Galeriename3
-images
-thumbs

Nun soll in meiner Navigation auf die verschiedenen Galerien verwiesen werden, also Galeriename1, Galeriename2 usw.
Da später immer neue Galerien dazu kommen können, soll das Script mit der Navigation, also die nav.inc.php die Ordner auslesen und und die links auf die Galerienamen legen.

Mist hat er die Struktur nich richtig angezeigt sry. Versuch ichs so:

Rootverzeichnis
-pics(für Hintergrundbilder Banner usw.)
-inc (alle include Dateien
-bilder(mein Galeryscript)
--css
--js
--galerien
---Galeriename1
----images
----thumbs
---Galeriename2
----images
----thumbs
---Galeriename3
----images
----thumbs

Denke mal so isses verständlich
 
Das ist aber kein CSS-, sondern ein PHP-Problem, weshalb ich dich bitten möchte, diese Frage in unserem Fachforum zu erörtern.

mfg Maik
 
Status
Nicht offen für weitere Antworten.
Zurück