Menüproblem

Deutschsprachiger Support für CMS Made Simple
Post Reply
jester

Menüproblem

Post by jester »

Hi,

ich habe ein Menü-Problem und finde einfach nicht heraus, woran es liegt.

Statisch programmiert funktioniert mein Style-Sheet wie gewünscht. Die aktive Seite ist größer und orange dargestellt (siehe Anhang so soll es aussehen.png).

Der dazugehörende Code ist:

Code: Select all


#navlist

{

width: 85%;

text-align: left;

margin: 0 auto;

padding: 10;

text-indent: 10;

list-style-type: none;

}



#navlist li

{

padding: 10;

margin: 10;

text-indent: 10;

display: inline;

}



#navlist li a

{

letter-spacing: 0px;

text-decoration: none;

color: #7F7F7F;

font-size: 1em;

padding: 2 2px;

border-top: .5em solid #ffcc22;

}



#navlist li a:hover,#navlist a#current

{

color: #006699;

border-top: none;

font-size: 1.5em;

}



#navlist a#current { color: #ffcc22; }

Nach der Umsetzung für CMSms sieht es aus wie der zweite Anhang so sieht es aus.png. Keine Markierung der aktiven Seite durch großen orangefarbenen Text.

Ich habe den Code etwas angepasst, damit er zum Menü-Template passt:

Code: Select all

#navlist
{
width: 85%;
text-align: left;
margin: 20px ;
list-style-type: none;
}

#navlist ul
{
padding-top: 20px;
margin: 10px;
text-indent: 0;
}



#navlist li
{
margin: 5px;
text-indent: 5px;
display: inline;
}



#navlist li a
{
letter-spacing: 0px;
text-decoration: none;
color: #7F7F7F;
font-size: 1em;
padding:  0 2px;
border-top: .5em solid #ffcc22;
}


#navlist a#menuactive
{ 
color: #ffcc22;
border-top: none;
font-size: 1.5em; 
}

#navlist li a:hover
{
color: #006699;
border-top: none;
font-size: 1.5em;
}
Ich fürchte, es fehlt einfach ein Zustand im Menü-Template. Aber als PHP- und smarty-Laie fehlt mir da der Durchblick (ich bin schon stolz, die im Template eingebaute Angabe der Menühierarchie-Ziffer abgestellt zu haben...)

Code: Select all

{* CSS classes used in this template:
#menuwrapper - The id for the <div> that the menu is wrapped in. Sets the width, background etc. for the menu.
#navlist - The id for the <ul>
.menuparent - The class for each <li> that has children.
.menuactive - The class for each <li> that is active or is a parent (on any level) of a child that is active. *}

{if $count > 0}
<div id="menuwrapper">
<ul id="navlist">
{foreach from=$nodelist item=node}
{if $node->depth > $node->prevdepth}
{repeat string="<ul>" times=$node->depth-$node->prevdepth}
{elseif $node->depth < $node->prevdepth}
{repeat string="</li></ul>" times=$node->prevdepth-$node->depth}
</li>
{elseif $node->index > 0}</li>
{/if}
{if $node->parent == true or ($node->current == true and $node->haschildren == true)}
	<li class="menuactive menuparent"><a class="menuactive menuparent" 
{elseif $node->current == true}
	<li class="menuactive"><a class="menuactive" 
{elseif $node->haschildren == true}
	<li class="menuparent"><a class="menuparent" 
{elseif $node->type == 'sectionheader'}
        <li class="sectionheader"><span> {$node->menutext} </span>
{elseif $node->type == 'separator'}
        <li style="list-style-type: none;"> <hr class="separator" />
{else}
	<li><a 
{/if}
{if $node->type != 'sectionheader' and $node->type != 'separator'}
href="{$node->url}" {if $node->accesskey != ''}accesskey="{$node->accesskey}" {/if}{if $node->tabindex != ''}tabindex="{$node->tabindex}" {/if}{if $node->titleattribute != ''}title="{$node->titleattribute}"{/if}{if $node->target ne ""} target="{$node->target}"{/if}>   {$node->menutext}</a>
{elseif $node->type == 'sectionheader'}
>



{$node->menutext}</a>
{/if}

{/foreach}

	{repeat string="</li></ul>" times=$node->depth-1}		</li>
	</ul>
<div class="clearb"></div>
</div>
{/if}


Meine Frage ganz konkret:

Mache ich einen Denkfehler im CSS oder fehlt mir wirklich ein Zustand im Menütemplate - und wie müsste ich den einbauen?

Danke und gute Nacht

Jester
Attachments
so sieht es aus.png
so soll es aussehen.png
RonnyK
Support Guru
Support Guru
Posts: 4962
Joined: Wed Oct 25, 2006 8:29 pm

Re: Menüproblem

Post by RonnyK »

Jester,

hasst du ein Link, Ich glaube auf jeden fall dass menuactive nicht angeruferen werden soll mit #menuactive aber mit .menuactive. Vielleicht kannst du mit FF sehen mit der "Webdeveloper" extension welches element aktief ist. Ich nutze immer "FF - webdeveloper" und dann das path "CSS -> CSS style information". Wenn mann dann mit der maus uber die seite gehst zeigt er denn elementen die aktief sind und dann weisst du wass dus stylen kannst.

Ronny
cyberman

Re: Menüproblem

Post by cyberman »

jester wrote: Ich habe den Code etwas angepasst, damit er zum Menü-Template passt:
Vielleicht hättest du ihn nicht nur etwas, sondern ganz anpassen sollen  ;).
(ich bin schon stolz, die im Template eingebaute Angabe der Menühierarchie-Ziffer abgestellt zu haben...)
Das ist eigentlich keine große Kunst, weil bereits in den mitgelieferten Stylesheets gezeigt wird, wie es funktioniert.

Mit scheint, der Auslieferungsumfang von CMSms (also die Demo-Installation) wird von vielen Usern stark unterschätzt. Im Gegensatz zu anderen CMS enthält die Muster-Installation nicht nur eine simple Beispielseite, sondern viele wertvolle Informationen zum Liefer- und Funktionsumfang zu CMSms. Auch die mitgelieferten Templates und Stylesheets sind durchaus hochwertig und für Studienzwecke gut geeignet.
Mache ich einen Denkfehler im CSS
So wie ich es auf die Schnelle sehe, ja.
#navlist a#menuactive
<a class="menuactive"
Fällt dir irgend etwas auf ;)? (Ich will dir ja nicht das Erfolgserlebnis nehmen)
jester

Re: Menüproblem

Post by jester »

RonnyK und cyberman - schon mal Danke für die Hinweise - melde mich nach dem Entkäfern meines Codes...

Jester
jester

Re: Menüproblem

Post by jester »

Ich komm' nicht drauf...  ::)

Ins Stylesheet eingefügt habe ich nun als Fontklasse:

Code: Select all

.menuactive {color:#ffee22; font-weight:bold;}
und analog zu

Code: Select all

#navlist li a:hover
{
color: #006699;
border-top: none;
font-size: 1.5em;
}

Code: Select all

#navlist li a:active
{ 
color: #ffcc22;
border-top: none;
font-size: 1.5em; 
}
Analog zu mouseover.png soll die aktive Seite nicht in blau, sondern in orange ohne Balken oben drüber erscheinen. Warum klappt das einfach nicht? Bei der statisch programmierten Seite geht das problemlos und ich habe eigentlich nur die Bezeichnungen geändert ...

Wirklich nur ein CSS Problem?
Attachments
ausgangszustand.png
mouseover.png
cyberman

Re: Menüproblem

Post by cyberman »

Zumindest hast du ja verstanden, was ich meinte (ID, Klasse).

Poste doch einfach mal einen Link - da kann ich mal bißchen probieren (ich liebe die Firefox Developer Extension ;D).
jester

Re: Menüproblem

Post by jester »

:)

Noch ist alles mit Xampp lokal - ich komme gern auf Dein Angebot zurück und melde mich dann.

Jester
jester

Re: Menüproblem

Post by jester »

Heureka!

Nu hab' ich's. (Stunden der Frickelei - aber solange ich eine Chance sehe, selbst drauf zu kommen, ist es das wert - trotzdem nochmal vielen Dank für Dein Angebot, cyberman - gut zu wissen, dass man einen Rettungsanker hat!)

Das WebDeveloperToolbar ist wirklich eine große Hilfe!

Gelöst habe ich mein Problem mit:

Code: Select all

#navlist li.menuactive a.menuactive
:)

Jester
cyberman

Re: Menüproblem

Post by cyberman »

jester wrote: Heureka!

Nu hab' ich's. (Stunden der Frickelei - aber solange ich eine Chance sehe, selbst drauf zu kommen, ist es das wert
Genau das meinte ich
cyberman wrote: (Ich will dir ja nicht das Erfolgserlebnis nehmen)
Post Reply

Return to “German - Deutsch”