tutorials.de Buch-Aktion 05/2012
Like Tree1Danke
  • 1 Beitrag von Sprint
ERLEDIGT
JA
ANTWORTEN
7
ZUGRIFFE
512
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Rudi96 Rudi96 ist offline Grünschnabel
    Registriert seit
    Sep 2011
    Beiträge
    4
    Hey Leute,
    hab ein kleinen/großes Problem mit css und php. Hoffe ihr könnt mir helfen.
    Wenn ich dieses in html einbinde:
    HTML-Code:
    <ul id="nav">
    <li class="sub active">
    <a href="#"> Test
    </li>
    </ul>
    Code :
    1
    2
    3
    4
    
    Dies ist dann die style css:
    #nav .sub .active {
    background-color: #000;
    }

    So das ganze funktioniert auch so weit, nur das diese Website einen größeren Umfang haben soll, habe ich die html datei in php eingebunden und das ganze dann mit dem php include Befehl in html eingebunden. Jetzt kann ich das ganze natürlich mit dem active befehl vergessen. Wie bekomme ich es jetzt hin, dass das ganze wieder funktioniert. Kann ich dieses irgendwie mit php wieder hinbekommen. Ich möchte aber immer noch, die einzelne nav in einer externen Datei.

    Vielen Dank
     

  2. #2
    Sprint Sprint ist offline Mitglied Platin
    Registriert seit
    Apr 2004
    Ort
    Die heimliche Hauptstadt des Bieres
    Beiträge
    579
    Warum soll das nicht mehr funktionieren? Für den Client ist es nach wie vor eine Datei, die er bekommt. Alle includes passieren auf dem Server, also lange bevor der Client überhaupt auch nur ein Byte empfangen hat. Ich vermute eher, daß das Problem irgendwo in der Verbindung von HTML und CSS zu suchen ist. Prüfe doch erst einmal die korrekte Kodierung, in dem Schnipsel fehlt z.B. das schließende a und vereinfache das CSS. Wozu sub und active noch aufteilen?
     
    Think Different.

  3. #3
    Rudi96 Rudi96 ist offline Grünschnabel
    Registriert seit
    Sep 2011
    Beiträge
    4
    Also das Funktioniert schon noch, nur z.B. ich habe 10 Seiten die alles auf diese Datei zugreifen. Jede Seite soll aber an einer anderen Stelle, den active Befehl bekommen, da ja alles in einer php Datei gespeichert ist, kann ich den active Befehl nur auf eine Seite einstellen. Ich möchte aber jeder Seite den active Befehl einzeln zuordnen und das Funktioniert dann nicht mehr.
     

  4. #4
    Sprint Sprint ist offline Mitglied Platin
    Registriert seit
    Apr 2004
    Ort
    Die heimliche Hauptstadt des Bieres
    Beiträge
    579
    Du könntest z.B. an den Link als GET Wert ein Kennzeichen für die aufgerufene Seite anhängen. Damit weißt du genau, welcher Menüpunkt ausgezeichnet werden soll. Oder du schreibst, wenn es alles einzelne Seiten sind, dieses Kennzeichen oben in den Kopf.
    Rudi96 bedankt sich. 
    Think Different.

  5. #5
    Rudi96 Rudi96 ist offline Grünschnabel
    Registriert seit
    Sep 2011
    Beiträge
    4
    Vielen Dank schon mal für die Hilfe, aber mit was soll ich das in den Kopf schreiben und wie ?
     

  6. #6
    Sprint Sprint ist offline Mitglied Platin
    Registriert seit
    Apr 2004
    Ort
    Die heimliche Hauptstadt des Bieres
    Beiträge
    579
    Ganz normal mit PHP. Du wirst ja wohl am Anfang einer Seite einen PHP Teil haben, in dem die Session gestartet wird, der Datenbankzugriff initialisiert wird usw. Da hinein schreibst du das Kennzeichen. Wenn es z.B. die Kontaktseite ist, könnte es so aussehen:
    PHP-Code:
    $page 'contact'
    Und in der include Datei für das menü fragst du in jeder Menüzeile ab, ob das Seitenkennzeichen soundso lautet und gibst dann mit echo das active mit aus. Fertig.
     
    Think Different.

  7. #7
    Rudi96 Rudi96 ist offline Grünschnabel
    Registriert seit
    Sep 2011
    Beiträge
    4
    OK, Vielen Dank, probier es dann mal aus.
     

  8. #8
    djheke djheke ist offline Mitglied Silber
    Registriert seit
    Sep 2011
    Beiträge
    96
    Ist zwar schon eine Weile her, aber vielleicht brauchst du es noch. Wenn ich dich richtig verstanden habe geht es die um die Kennzeichnung der aktuellen seite.

    Code navigation.php
    PHP-Code:
    <?php
     $uri 
    $_SERVER['REQUEST_URI']; 
     
    $navigation = array (
                    
    "/" => "Startseite",
                    
    "/about.php" => "Über mich",
                    
    "/impressum.php" => "Impressum",
                  );  
    echo 
    " <ul>\n";
     
     foreach ( 
    $navigation as $href => $linktext ) {
        if ( 
    $uri == $href ) {
        echo 
    '<li><strong>'.$linktext.'</strong></li>'."\n";
         } else {
       echo 
    '<li><a href="'.$href.'">'.$linktext.'</a></li>'."\n";
     }
    }

    echo 
    "</ul>";
    ?>
    und im HTML wird die navigation.php mit
    HTML-Code:
    <?php include('navigation.php');?>
    aufgerufen.

    edit: Sorry, hab ich übersehen, dass das Thema schon erledigt ist.
    Geändert von djheke (17.10.11 um 08:09 Uhr)
     

Ähnliche Themen

  1. link mit class="active" hervorheben
    Von Blame23 im Forum CSS
    Antworten: 6
    Letzter Beitrag: 08.06.11, 00:48
  2. "active"-Klasse hinzufügen
    Von vendy im Forum Javascript & Ajax
    Antworten: 3
    Letzter Beitrag: 20.01.09, 11:14
  3. Antworten: 1
    Letzter Beitrag: 10.09.07, 23:14
  4. "active" Menubutton über Seitentitel
    Von lordimac im Forum PHP
    Antworten: 4
    Letzter Beitrag: 04.11.04, 22:58
  5. a:active & onfocus="this.blur();"
    Von Tribalman im Forum CSS
    Antworten: 15
    Letzter Beitrag: 17.02.02, 00:11

Stichworte