[TYPO3-german] Dynamische Bilder abhängig von der Seite
Patric Pesch
p.pesch at 11com7.de
Fri Nov 24 13:52:02 CET 2006
Jonas Loepthien schrieb:
> Hallo Sebastian
>
> Hatte gerade so eine Aufgabe.
>
> http://customer.sylon.net/~erg/
>
> (bei 'Über uns' habe ich ein Test-JPG eingebaut)
>
>
> Am besten geht das mit [PIDinRootline = xx]
>
> Also ich hab im normalen CSS
>
> #seitenkopf_bild {
> position: relative;
> height: 66px;
> background: #fff url(../bilder/seitenkopf_bild.jpg) no-repeat top left;
> }
>
> Und im TypoScript:
>
> [PIDinRootline = 35]
> page.headerData.100 = HTML
> page.headerData.100.value (
>
> <!-- CSS für Seitenkopf-Grafik 'Über uns' -->
> <style type="text/css">
>
> #seitenkopf_bild {
> background: #fff url(fileadmin/templates/bilder/seitenkopf_ueberuns.jpg)
> no-repeat top left;
> }
>
> </style>
> )
> [end]
>
>
> Wenn du die Grafik nicht mit CSS als Hintergrundbild einbindest kannst
> du einen Marker setzen.
>
> ###GRAFIK### (in der Designvorlage)
>
> Im TypoScript:
>
> temp.seitenkopf = IMAGE
> temp.seitenkopf.file = pfad zur Grafik
>
> # Grafik für zweite Ebene
>
> [PIDinRootline = 35]
> temp.seitenkopf.file = pfad zur Grafik der zweiten Ebene
> [end]
>
> page.10.marks.SEITENKOPF < temp.seitenkopf
>
>
> Gruss Jonas
Hi, ich würde mit body-ids arbeiten. Das hat den Vorteil, dass .css
Dateien vom Browsern gecached werden und der HTML-Code sauber bleibt.
temp.body = COA
temp.body {
10 = TEXT
10.field = title
10.wrap = <body id="|">
}
page.bodyTagCObject < temp.body
So muss man in seiner CSS nur noch die verschiedenen Hintergründe
definieren:
body#Seite1 #seitenkopf {background: #fff url(pfad/zu/bild.jpg)}
body#Seite2 #seitenkopf {background: #fff url(pfad/zu/bild2.jpg)}
usw.
Natürlich kann man anstatt des titles auch andere Felder od. Konstanten
benutzen. So wie man mag. Ich hab es mit Konstanten gelöst, und den
css-code in einzelne stylesheets ausgelagert.
temp.body = COA
temp.body {
10 = TEXT
10.value = {$co.PageName}
10.ifEmpty.cObject = TEXT
10.ifEmpty.cObject.value = page
10.wrap = <body id="|">
}
page.bodyTagCObject < temp.body
page.includeCSS {
file99 = fileadmin/templates/css/{$co.PageName}.css
file99.title = {$co.PageName}
file99.media = screen
}
und in den Konstanten der Seiten dann:
co.PageName = seite1
Schöne Grüße
Patric
More information about the TYPO3-german
mailing list