CSS-Navi Frage

  • CSS-Navi Frage

    Hi Leudz!!
    Ich habe eine kleine Frage im Bezug auf eine (meine) CSS-Navigation:

    Quellcode

    1. #navigation_block {
    2. margin: 0 auto;
    3. width: 823px;
    4. height: 41px;
    5. background: url(images/nav1.jpg) no-repeat;
    6. }
    7. #navigation_block ul {
    8. list-style: none;
    9. width: 823px;
    10. margin:0 auto;
    11. }
    12. #navigation_block li {
    13. list-style: none;
    14. display: block;
    15. color: #FFFFFF;
    16. height: 41px;
    17. line-height: 41px;
    18. margin:0 3px;
    19. float: left;
    20. }
    21. #navigation_block li a {
    22. display: block;
    23. font-size: 11px;
    24. font-family: verdana;
    25. color: #FFFFFF;
    26. background: url(images/nav1.jpg);
    27. height: 41px;
    28. line-height: 41px;
    29. text-decoration: none;
    30. width: 85px;
    31. float: left;
    32. }
    33. #navigation_block li a:hover {
    34. display: block;
    35. color: #FFFFFF;
    36. background: url(images/nav2.jpg) repeat-x;
    37. text-decoration: none;
    38. }
    39. #navigation_block li a.current {
    40. display: block;
    41. font-size: 11px;
    42. font-family: verdana;
    43. color: #FFFFFF;
    44. background: url(images/nav2.jpg);
    45. height: 41px;
    46. line-height: 41px;
    47. text-decoration: none;
    48. width: 85px;
    49. float: left;
    50. }
    51. #navigation_block li a:hover.current {
    52. display: block;
    53. color: #FFFFFF;
    54. background: url(images/nav2.jpg) repeat-x;
    55. text-decoration: none;
    56. }
    Alles anzeigen


    Der Code zeigt den CSS Code für die Navigation. Natürlich ist alles in einem DIV-Tag auf der Seite angezeigt. Zu sehen ist auch #navigation_block li a.current + #navigation_block li a:hover.current. Dieses zeigt an, wo sich der Besucher auf der Site befindet (oben in der Navi). Wie schaff ich das jetzt, dass ich nicht in jede Unterseite das Design einbaue und hinter dem dazugehörigen Link den current anzeige, sondern dass der Browser das sozusagen von alleine herausfindet.
    Ich hoffe ich hab mich verständlich ausgedrückt. Danke schon im Vorraus.
    Greetz, Minamato


    Besucht doch Narutoslife - Deine Naruto Informationsquelle!!


    --- Zeitenbann ---


    Besucht doch Zeitenbann.de - Die offzielle Website des Gothic-, Mittelalter- und Skurriles-Shop!!
  • benutzt du denn noch andere Techniken wie z.B php ?

    Da du meines Wissens nicht drum herum kommen wirst, das sonst in jede Seite einzubauen.

    Mit einer Script oder Programmiersprache hättest du den Vorteil, dass du die URL auslesen kannst und dadurch feststellst auf welcher Seite sich der User befindet.
    Da könntest du dann deine class="current" einfach ausgeben.
  • Ich würde mir mit PHP die Navigation dynamisch zusammenbauen lassen, dann ersparst Du Dir viel Tipparbeit. Mal eben aus dem Kopf zusammengetippt und ohne Funktionsgarantie:

    Quellcode

    1. <?php
    2. $navigationselemente = array(
    3. array(
    4. "pfad" => array("element" => "wert", "element_2" => "wert2"),
    5. "name" => "Der Name",
    6. ),
    7. array(
    8. # s.o.
    9. ),
    10. );
    11. echo '<ul id="navigation>';
    12. foreach($navigationselemente as $element)
    13. {
    14. echo '<li><a href="index.php?'.http_build_query($element["pfad"]).'" '.((http_build_query($element["pfad"]) === str_replace("index.php?","",$_SERVER["REQUEST_URI"])) ? 'class="current"' : '').'>'.$element["name"].'</a>';
    15. }
    16. echo '</ul>';
    17. ?>
    Alles anzeigen


    Das ist jetzt weder besonders schnell noch besonders schön, erklärt Dir aber ggf. anschaulich, wie es grundsätzlich funktioniert.