Navigationselementen eigene Klassen zuweisen

Gesperrt
mansen
Beiträge: 2
Registriert: Mo 5. Nov 2007, 18:08
Kontaktdaten:

Navigationselementen eigene Klassen zuweisen

Beitrag von mansen » Mo 5. Nov 2007, 18:21

Hallo,

ich möchte den einzelnen Navigationselementen eigene Klassen zuweisen, sodass ich jeden einzelnen Punkt entsprechend meinen Wünschen formatieren kann.

Ziel dabei ist es, die Navigation versetzt untereinander anzeigen zu lassen. Bedeutet, dass jeder Menüpunkt ca. 5 px margin auf der linken Seite mehr hat, als sein Vorgänger.

Alternative wäre eben, für jeden Menüpunkt ne separate Navigation zu erstellen, aber das wäre dann vom Pflegeaufwand zu umständlich.

Ich hoffe Ihr versteht, was ich möchte und könnt mir weiterhelfen.

Vielen Dank schon mal und freundliche Grüße
Mansen

kummer
Beiträge: 2423
Registriert: Do 6. Mai 2004, 09:17
Wohnort: Bern, Schweiz
Kontaktdaten:

Beitrag von kummer » Mo 5. Nov 2007, 18:26

jeder kategorie eine eigene klasse zuzuweisen halte ich für eine gar nicht gute idee. das ist nicht nur in der umsetzung schwierig, sondern auch in der pflege.

ich würde mal einen versuch machen mit verschachtelten divs oder verschachtelten listen. beim verschachteln sollten sich - wenn jedem element eine padding-left zugewiesen werden wird - die abstände addieren.

aber die umsetzung dürfte trotzdem etwas komplizierter sein als normal.
aitsu.org :: schnell - flexibel - komfortabel :: Version 2.2.0 (since June 22, 2011) (jetzt mit dual license GPL/kommerziell)

silicone
Beiträge: 299
Registriert: Di 15. Mär 2005, 10:33
Kontaktdaten:

Beitrag von silicone » Di 6. Nov 2007, 10:44

Hallo,

ist relativ einfach...

Gib den Punkten als Klasse Ihre Idcat mit...

Im Template ungefähr so:

Code: Alles auswählen

<!-- BEGIN:BLOCK -->
	<li class="{HREF}"><a href="{HREF}" title="{NAME}">{NAME}</a></li>
<!-- END:BLOCK -->
Gruß,
Thomas

kummer
Beiträge: 2423
Registriert: Do 6. Mai 2004, 09:17
Wohnort: Bern, Schweiz
Kontaktdaten:

Beitrag von kummer » Di 6. Nov 2007, 10:47

silicone hat geschrieben:ist relativ einfach... Gib den Punkten als Klasse Ihre Idcat mit...
nun ja, man kann ja so einiges mit css machen. aber achtung: für jede neue kategorie muss du auch eine css-klasse erstellen. und wenn eine kategorie verschoben wird... viel vergnügen.
aitsu.org :: schnell - flexibel - komfortabel :: Version 2.2.0 (since June 22, 2011) (jetzt mit dual license GPL/kommerziell)

silicone
Beiträge: 299
Registriert: Di 15. Mär 2005, 10:33
Kontaktdaten:

Beitrag von silicone » Di 6. Nov 2007, 14:01

Hallo Kummer,

du hast natürlich Recht in Bezug auf die Flexibilität. Funktioniert nur bei relativ "fester" Navigation.

mansen
Beiträge: 2
Registriert: Mo 5. Nov 2007, 18:08
Kontaktdaten:

Beitrag von mansen » Mi 7. Nov 2007, 09:36

vielen dank für eure antworten. sie haben mich zumindest schon mal bei der hilfsnavigation einen schritt weiter gebracht. das modul sieht nun folgendermaßen aus:

Code: Alles auswählen

<?php
/***********************************************
* CONTENIDO MODUL - OUTPUT
*
* Modulname  :      Hilfsnavigation
* Author(s)   :     Andreas Lindner
* Copyright   :     Contenido - four for business, Andreas Lindner
* Created     :     05.08.2005
************************************************/

cInclude("frontend", "includes/functions.navigation.php");
cInclude('classes', 'class.template.php');

echo '<ul>';

$catStart = "9";
if(($catStart=='')||($catStart=='0')){
    $cApiClient = new cApiClient($client);
    $catStart = $cApiClient->getProperty('navigation', 'idcat_hilfsnavi');
}
if(!is_object($oClient)) {
	$oClient = new cApiClient($client);
}

$navigation = array();
$navigation = createNavigationArray($catStart, $db);

$x=1;

if (count($navigation) > 0) { 
	foreach ($navigation as $key => $data) {
		echo '<li class="hilfsnavi'.$x.'"><a href="'.$sess->url('front_content.php?idcat='.$data['idcat']).'">'.$data['name'].'</a></li>';
                $x=$x+1;
	} 
}

echo '</ul>';

?>
jeder menüpunkt erhält eine eigene klasse mit fortlaufender nummer. und den klassen gebe ich per css entsprechend margin-werte.

leider konnte ich diese lösung für die hauptnavigation nicht anwenden, weil ich in dem entsprechenden modul nirgends die entsprechende schleife für die erstellung der links gefunden habe, da der quellcode hier doch ein wenig komplexer ist. weiß jemand von euch wo genau die links definiert werden?

wie kann ich denn in der hilfsnavigation dem aktuellen link eine klasse zuweisen, sodass dieser anders dargestellt werden kann? es soll so sein, dass wenn ich über die hilfsnavi das impressum anschaue, dass der link für impressum als aktiver link anders dargestellt wird.

freundliche grüße
mansen

Gesperrt