Fehler bei Integration html-code in php

clavesana

Grünschnabel
Guten Abend

Ich bin (mit sehr schwachen php-Kenntnissen) daran den redundanten html-Code meiner Navi einer php-Lösung zuzuführen. Die direkten links funktionieren bereits, leider stehe ich nun, wahrscheinlichg bei der Syntax, der Klapp-Navi an. Der Navi-Eintrag wird angezeigt und der link ist valid aber die in css definierte Ausprägung wird nicht berücksichtigt.

Kann mir bitte jemand helfen bzw.mir sagen wo hier der Wurm drin ist.

php:
<?php
if ($thisPage!="interests") {
echo '<a id=\"no-aktiv\" href=\"b_interests.php\">interests</a>';
}
?>

css:
#menu #no-aktiv a {
font-size: 1.1em;
color: #FFFFFF;
background:transparent;
font-weight: bold;
}


Besten Dank im Voraus für Hilfe - clavesana
 
Zuletzt bearbeitet:
Dein Selektor ist ziemlicher Murks.

#menu #no-aktiv a sagt folgendes

Finde alle Links, welche sich im Baum irgendwo unterhalb des Elements mit der ID "no-aktiv" befindet, welches sich wieder irgendwo unterhalb des Elementes mit der ID "menu" befindet.

1. Da die ID eindeutig ist, macht es keinen Sinn, zwei Stück in einem Selektor zu nennen
2. "no-aktiv" beeinhaltet keine a-Elemente, denn es ist selbst schon eins.

Daraus folgt

CSS:
#no-aktiv {
    font-size: 1.1em;
    color: #FFFFFF;
    background:transparent;
    font-weight: bold;
}
 
Leider funktionieren mit der vorgeschlagenen Aenderung meine direkten links (ohne Klapp-Navi) nicht mehr.

<ul>
<li
<?php
if ($thisPage=="pictures") {
echo " id=\"aktiv\"";
} else {
echo " id=\"no-aktiv\"";
}
?>
> <a href="b_pictures.php" title="Fotos">pictures</a></li>
</ul>

Den Murks habe ich aus dem web kopiert - muss die Sache morgen nochmal überdenken.

Merci für Deinen Hilfe - Gruss Gitte
 
Zuletzt bearbeitet:
Guten Abend

Habe die css-Definitionen und die php-Einbindung umgebaut und es funktioniert schon ein wenig besser ;) Fehlerhaft ist jedoch nun die Position des Unter-Menu zum Haupt-Menu «interests» - anstatt darunter wird das Unter-Menu rechts neben dem Haupt-Menu angezeigt und verdeckt den folgenden Menu-Eintrag (sh.pic.).

Kann mir bitte jemand mit einem Hinweis helfen was diese fehlerhafte Positionierung verursacht. Bei meiner ursprünglichen Version ohne php war das Unter-menu exakt unter dem Haupt-Menu ausgerichtet.

68ec43a06a5b7cf4d69d419ccbeeb79f_Bild6.jpg


HTML:
<ul> 
   <li>    <?php 
   if ($thisPage=="interests") {
      echo '<span class="ueberschr-aktiv">interests</span>'; 
	  echo '
	     <ul>
            <li class="first"><a class="drop-down" href="http://www.tutorials.de/b_00.htm">Bern</a></li>
            <li><a class="drop-down" href="http://www.tutorials.de/b_00.htm">IT - Piemonte</a></li>
		    <li><a class="drop-down" href="http://www.tutorials.de/b_00.htm">IT - Puglia</a></li>
         </ul>
	  ';
   } else {
         echo '<a class="no-aktiv" href="b_interests.php" title="Interessen">interests</a>'; 
    }
   ?> 
   </li>
</ul>

Vielen Dank im Voraus - Gruss Gitte
 
Zuletzt bearbeitet:
Also ob PHP oder nicht spielt ja keine Rolle. Guck dir mal den von deinem PHP Code erzeugten HTML Code an und vergleiche ihn mit deinem vorherigen HTML Code, den du ohne PHP erstellt hast. Irgendwo wirst du was vergessen haben oder so.

Und falls du es nicht findest brauchen wir zum Helfen ebenfalls das erzeugte HTML und vor allem die entsprechenden CSS Regeln.
 
Hallo CPoly,

Danke für die Hilfestellung. Ich muss nochmals anfangen die Technik zu verstehen. Das mit dem Vergleich geht nicht, da ich ansonsten wieder dort bin wo ich am 09.04.11, 23:01 war.
Dein Selektor ist ziemlicher Murks. / #menu #no-aktiv a
Die Version die funktionierte war eben der, aus dem web kopierte, Murks. Somit verfüge ich über keine vernünftige Klappmenu-Version.

Ich melde mich wieder wenn ich etwas vorzeigbares bereit habe.

Gruss Gitte
 
Hallo,

Meine Navigation funktioniert, auch in php, inzwischen. Der Fehler lag in css und nicht in der Anwendung von php. Bitte entschuldigt, dass ich mit solch einem Schwachsinn Eure Zeit beansprucht habe.

Merci vielmals für die Hilfe und schönes Wochenende.

Gruss Gitte
 
Hallo Gitte,

Kannst du bitte trotzdem deine Lösung posten?
Für die Nachwelt vielleicht interessant :-)
 
Zurück