Hallo,
ich möchte in einem Menü innerhalb eines jeden Menüpunktes 2 verschiedene Schriftgrößen verwenden. Das ganze soll auch mehrsprachig möglich sein.
Die Menüpunkte bestehen immer aus 2 Wörtern. das erste soll in einer kleineren Schriftgröße, das 2. in einer größeren Schriftgröße dargestellt werden.
Meine Lösungsansätze:
1. Es lässt sich per css verwirklichen. Nur weis ich leider absolut nicht, wie man die 2 Worte unterschiedlich formatieren kann. Vielleicht kann man ja auch ein statisches Menü einbauen, die Menüpukte werden sich nicht ändern. Allerdings sehe ich da mit meinem laienhaften Verständnis Probleme bei der Mehrsprachigkeit.
2. Es werden Grafiken verwendet. Allerdings ist der Hintergrund so gestaltet, dass sich keine GIFs verwenden lassen. Ich müsste da also JPGs oder PNGs verwenden können. Leider hab ich aber keinen blassen Schimmer, wie ich ein Menü mit diesen Grafiken baue.
Kann mir vielleicht jemand weiterhelfen?
Vielen Dank schon mal.
Hallo,
das sollte problemlos mit stdWrap und splitchar möglich sein
georg
Danke für die Antwort. Leider ist sie jedoch etwas zu knapp geraten, um von mir verstanden zu werden.
Könntest Du mit vielleicht mit einer etwas detaillierteren Antwort ein Stück weiter auf die Sprünge helfen?
Das ist nicht sooo schwer...
Du schreibst deinen Seitentitel in den Seiteneigenschaften an der Stelle wo sich die Schriftgröße wechseln soll mit einem Bindestrich (-)
Also Zum Beispiel Klein-Groß
Dann in deinem Menü im NO
NO {
1 = COA
1 {
10 = TEXT
10 {
field = title
listNum = 0
listNum.splitChar= -
wrap = <span class="klein">|</span>
}
20 < .10
20 {
listNum = 1
wrap = <span class="gross">|</span>
}
}
stdWrap.cObject = TEXT
stdWrap.cObject < .1
}
Was passiert hier?
Am zeichen - wird der title in zwei Teile aufgeteilt. listNum = 0 ist der Erste listNum = 1 dementsprechend der Zweite.
Beide bekommen einen unterschiedlichen wrap. Das ganze befindet sich in einem COA. Am Ende wird 1 nach stdWrap.cObject kopiert...
Sorry wegen der späten Antwort. Jedoch kam die Lösung erst heute zum Einsatz - und es funktioniert.
Vielen Dank also.
Allerdings gibt es noch ein kleines Problem:
Den aktiven Menüeintrag würde ich gern anders formatieren. Ich bin jetzt allerdings mit meinem laienhaften Latein am Ende der Lösungssuche.
Kannst Du mir da vielleicht noch einen Tipp geben?
Vielen Dank schon mal.
Es wäre schön gewesen, wenn du nochmals dein TS gezeigt hättest - ist immer hilfreich!
Aber im Prinzip sollte sowas gehen! Aber ohne Gewähr!
ACT < NO.
ACT {
1.10.wrap=<span class="klein-aktiv">|</span>
1.20.wrap=<span class="groß-aktiv">|</span>
}
Daniel
Sorry, hatte Deinen ersten Satz nicht gelesen...
Mein TS des Menüs:
page.10.subparts.MAINNAV_MENU = HMENU
page.10.subparts.MAINNAV_MENU {
1 = TMENU
1.NO {
1 = COA
1 {
10 = TEXT
10 {
field = title
listNum = 0
listNum.splitChar = -
wrap = <div id="mainnav_menu_link"><span class="menulink_low">|</span><br />
}
20 < .10
20 {
listNum = 1
wrap = <span class="menulink_up">|</span></div>
}
}
stdWrap.cObject = TEXT
stdWrap.cObject < .1
}
}
Ja, Daniel hat den Code doch oben gepostet.
Bau den ein, aktiviere NO oder ACT noch und fertig...
Die Ersten Zeile lauten dann bei dir:
1.ACT < .1.NO
1.ACT = 1
1.ACT {
....
}
Es tut mir wirklich leid, Euch mit diesem Problem so nerven zu müssen. Leider fehlt mir jedoch noch das entscheidende Schlüsselerlebnis für das logische Verständnis zu Typoscript. Dann könnte ich mir solche Problmlösungen selbst erarbeiten und müsste nicht mehr nur mit Probieren auskommen.
Vielleicht könnt Ihr mir ja nochmal helfen. So als gute Tat vor dem Wochenende.
Mein Menü sieht jetzt so aus:
page.10.subparts.MAINNAV_MENU = HMENU
page.10.subparts.MAINNAV_MENU {
1 = TMENU
1.NO {
1 = COA
1 {
10 = TEXT
10 {
field = title
listNum = 0
listNum.splitChar = -
wrap = <div id="mainnav_menu_link"><span class="menulink_low">|</span><br />
}
20 < .10
20 {
listNum = 1
wrap = <span class="menulink_up">|</span></div>
}
}
stdWrap.cObject = TEXT
stdWrap.cObject < .1
}
1.ACT < .1.NO
1.ACT = 1
1.ACT {
1.10.wrap = <div id="mainnav_menu_link_active"><span class="menulink_low_active">|</span>
1.20.wrap = <span class="menulink_up_active">|</span></div>
}
}
Leider sehe ich jedoch nichts vom aktiven Status der Menüpunkte. Am css liegt es erstmal nicht, da ich bereits im Quelltext nichts kunktionierendes erkennen kann. Das Menü an sich funktioniert.
Vielen Dank schonmal für die hoffentlich letzten rettende Tat zu diesem Thema.
Ich denke mal, das du die Zuweisung stdWrap.cObject ganz am Schluss machen musst, sonst greift der ACT-Zustand nicht. Also entweder das ganze an den Schluss oder zweimal.
page.10.subparts.MAINNAV_MENU = HMENU
page.10.subparts.MAINNAV_MENU {
1 = TMENU
1.NO {
1 = COA
1 {
10 = TEXT
10 {
field = title
listNum = 0
listNum.splitChar = -
wrap = <div id="mainnav_menu_link"><span class="menulink_low">|</span><br />
}
20 < .10
20 {
listNum = 1
wrap = <span class="menulink_up">|</span></div>
}
}
stdWrap.cObject = TEXT
stdWrap.cObject < .1
}
1.ACT < .1.NO
1.ACT = 1
1.ACT {
1.10.wrap = <div id="mainnav_menu_link_active"><span class="menulink_low_active">|</span>
1.20.wrap = <span class="menulink_up_active">|</span></div>
stdWrap.cObject = TEXT
stdWrap.cObject < .1
}
}
Sollte eigentlich nichts ausmachen, weil du ja NO kopierst. Naja, versuchs oder vielleicht sieht ja auch SLang noch einen Fehler.
Daniel
äh... ja das stdWrap brauchst nicht nochmal und ans Ende auch nicht. Das gehört in den Zustand des Menüs. Allerdings wird doch NO auf ACT kopiert, dann braucht man das stdWrap auch nicht nochmal schreiben.
NO = 1
NO {
1 = COA
1 {
10 = TEXT
10 {
field = title
listNum = 0
listNum.splitChar= -
wrap = <div id="mainnav_menu_link"><span class="menulink_low">|</span>
}
20 < .10
20 {
listNum = 1
wrap = <span class="menulink_up">|</span></div>
}
}
stdWrap.cObject = TEXT
stdWrap.cObject < .1
}
ACT < .NO
ACT {
1 {
10 {
wrap = <div id="mainnav_menu_link_active"><span class="menulink_low_active">|</span>
}
20 {
wrap = <span class="menulink_up_active">|</span></div>
}
}
}
So sollte das gehen. Im CSS müssen die Clasen für ACT natürlich definiert werden
So, das funktioniert jetzt.
Ich danke Euch vielmals für Eure Geduld und Eure Mühe.