Zum Inhalt springen

Ersten Buchstaben im Menü anders formatieren?

Erstellt am 2. Januar 2007 · 5 Antworten · letzte Antwort am 21. Februar 2007

Tags: Frage

Michaelh74 ·

Hallo zusammen,

ich versuche gerade mein Menü so zu formatieren, dass immer der erste Buchstabe etwas größer ist.

Ich weiß, dass es bei normalen Texten grundsätzlich per CSS und z.B. p:firstletter möglich ist. Leider geht das nur bei Block-Level-Elementen also nicht bei Links #paralyzed#

Somit suche ich nun nach einer Möglichkeite evtl. über TS an den ersten Buchstabe der Menüpunkte zu kommen und diesen in ein <span> zu wrappen.

Hat jemand ne Idee, wie ich das am besten angehen könnte?

Bin für jeden Tipp dankbar!

Viele Grüße
Michael

steffenk ·

das fand ich interessant, hier die Lösung:

NO.stdWrap.cObject = COA
NO.stdWrap.cObject {
	wrap=<p>|</p>
	10 = TEXT
	10.field=title
	10.crop = 1|
	10.wrap=<span class="firstletter">|</span>
	
	20 = TEXT
	20.field = title 
	20.substring=1
}
sissi ·

hi,

ich hab grad versucht das beispiel für normalen content zu übertragen aber

page.60 = TEXT
page.60.field = bodytext

gibt nichts aus (obwohl content im bodytext drinsteht, normal mit styles.content.get wird er ausgelesen)?!?

was ich erreichen will: den ersten buchstaben eines jeden contentelementes mit dem gifbuilder rendern. folgendes funktioniert bereits:

page.60 = COA
page.60.10 = TEXT
page.60.10.field = title
page.60.10.crop = 1 |
page.60.10.wrap = <span style="display:none;"> | </span>

page.60.15 = IMAGE
page.60.15.params = style="float:left;"
page.60.15.file = GIFBUILDER
page.60.15.file {
  XY = [10.w]+4, [10.h]
  backColor = #ffffff
  10 = TEXT
  10.text < page.60.10
  10.fontSize = 42
  10.fontFile = fileadmin/styles/mistress.ttf
  10.offset = 0,[10.h]
}
#page.60.15.wrap = <div style="float:left;">|</div>

page.60.20 = TEXT
page.60.20.field = title
page.60.20.substring=1

Nun noch das ganze mit bodytext anstatt title wäre toll...

grüsse
sissi

sissi ·

Hello again,

ich habs nun hinbekommen indem ich ein ganz neues rendering für content mit TS geschrieben habe (innerhalb von tt_content.text.20 funktioniert nämlich field.bodytext komischerweise), ist allerdings noch nicht durchgetestet.

Folgendes Typoscript nimmt nun den ersten Buchstaben aus dem bodytext und rendert ihn mit Hilfe des Gifbuilders z.b. als schnörkeligen Buchstaben (je nach Schriftart), der restliche Text wird normal in z.B. Arial dargestellt. Damit kann man nen schönen "Märchenbuch-Effekt" erzielen:

tt_content.text.20 >
tt_content.text.20 = COA
tt_content.text.20.10 = TEXT
tt_content.text.20.10.field = bodytext
tt_content.text.20.10.crop = 1 |
tt_content.text.20.10.wrap = <span style="display:none;"> | </span>

tt_content.text.20.15 = IMAGE
tt_content.text.20.15.params = style="float:left;"
tt_content.text.20.15.file = GIFBUILDER
tt_content.text.20.15.file {
  XY = [10.w]+4, [10.h]
  backColor = #ffffff
  10 = TEXT
  10.text < tt_content.text.20.10
  10.fontSize = 42
  10.fontFile = fileadmin/styles/mistress.ttf
  10.offset = 0,[10.h]
}

tt_content.text.20.20 = TEXT
tt_content.text.20.20.field = bodytext
tt_content.text.20.20.substring=1

PS: Habs eben getestet, funktioniert super. Hilfreich für eine 1a Optik ist, wenn man noch diese Zeile TS einfügt:

#Wrap around each Contentelement
tt_content.stdWrap.wrap= <div style="clear:left;"> | </div>

Grüsse
Sissi