[TYPO3-german] dynamisches Hintergrundbild in CSS
Stephan Bauer
stephan_bauer at gmx.de
Wed Feb 12 14:09:00 CET 2014
Hallo Bernhard,
ich würde es ein bisschen anders machen.
Das Bild würde ich in den Seiteneigenschaften anlegen.
Über cssInline würde ich es auch nicht anlegen, da durch die Option
inlineStyle2TempFile das CSS in die dynamisch erzeugte CSS-Datei
ausgelagert wird. Durch die unterschiedlichen Bilder ergibt sich auf
jeder Seite eine unterschiedliche CSS-Datei.
So hat es bei mir funktioniert (TYPO3 > 6.0):
page.headerData {
1001 = FILES
1001 {
references.data = levelmedia:-1, slide
references.listNum = 0
renderObj = TEXT
renderObj.data = file:current:publicUrl
renderObj.wrap (
<style>
html {background-image:url('/|');}
</style>
)
}
}
Das CSS bleibt damit im HTML.
Grüße
Stephan
schrieb Christian Stern:
> Am 8. Februar 2014 12:08 schrieb Bernhard Prange <mail at bernhard-prange.de>:
>
>> lib.backgroundImage =IMG_RECORDS
>>
>> lib.backgroundImage{
>>
>> file {
>> import = uploads/media/
>> import.data = levelmedia:-1, slide
>> import.listNum = 0
>> }
>> }
>> Das Lib Object kann ich auch via Fluid ausgeben. Der Pfad stimmt. Jetzt
>> möchte ich das Ganze in die CSS einbinden mit:
>>
>>
>> dynamicCssFile = PAGE
>> dynamicCssFile {
>> //the same typeNum is used to include the file, see below
>> typeNum = 108
>> config {
>> disableAllHeaderCode = 1
>> additionalHeaders = Content-Type:text/css
>> }
>> 10 = TEMPLATE
>> 10 {
>> template = FILE
>> template.file = fileadmin/yourDynamicCSSFile.css
>> marks.backgroundImage < lib.backgroundImage
>>
>> }
>> }
>> //now the parsed object is added to your page
>> page.headerData = COA
>> //use any "free" number
>> page.headerData.809 = TEXT
>> page.headerData.809.value = <link rel="stylesheet" type="text/css"
>> href="./index.php?type=108" />
>>
>> von http://typo3.org/documentation/snippets/sd/76/
>>
>> Wenn ich marks.backgroundImage so anspreche, erhalte ich eine leere
>> Ausgabe. Definiere ich es als TEXT Object, nicht als IMG_RECORDS erhalte
>> ich den gewünschten Text. Woran liegt das? Hat jemand eine Begründung für
>> mich, bzw. einen Workaround?
>
>
> Ich hätte ja cssInline benutzt.
>
> lib.backgroundImage = IMG_RESOURCE
> lib.backgroundImage {
> file = fileadmin/dev/ein-ziemlich-lanager-dateiname-hattricklogo.png
> }
>
> page >
> page = PAGE
> page.cssInline {
> 10 = TEXT
> 10 {
> cObject < lib.backgroundImage
> wrap = html {background-image:url('/|');}
> }
> }
>
> So wird ab der Seite in der du das Setup einfügst ein zusätzliche CSS Datei
> mit dem dynamischen Bild als Hintergrund eingefügt.
>
> Alternative könntest du natürlich das CSS auch direkt in den Wrap des
> Inhalts schreiben:
>
> page.10 = COA
> page.10 {
> 1 = LOAD_REGISTER
> 1.backgroundImage.cObject < lib.backgroundImage
>
> 10 = TEXT
> 10 {
> value = Irgendein Inhalt
> dataWrap = <div style="background-image:url('/{register:backgroundImage}
> ')">|</div>
> }
> }
>
More information about the TYPO3-german
mailing list