Hallo,
ich habe auf einer Seite ein DIV mit einem Hintergrundbild, das sich in der Breite der Auflösung anpasst. Wie ich in dieses DIV eine Grafik mache wüsste ich, aber wie ich dem DIV seitenabhängig ein Hintergrundbild per CSS zuweise, weiß ich nicht. Das Bild soll aus der RAND-Spalte gelesen werden.
Gruß
suche nach "dynamisches css"
#488813
Hallo,
danke für den Hinweis soweit. Mit folgendem Code kann ich meinem DIV nun eine Hintergrundfarbe zuweisen:
######## seitenabhängiges CSS ########
css = PAGE
css {
typeNum = 22
config{
additionalHeaders = Content-type: text/css
disableAllHeaderCode = 1
}
10 = TEXT
10.value (
.content_header_pic {
)
20 = TEXT
20.data = levelfield:-1, abstract, slide
20.wrap = background-color: | ;
30 = TEXT
30.value (
border-top: 8px solid #0D337A;
height: 105px;
width: 100%;
}
)
}
Wie man sieht, lese ich das derzeit aus dem Inhaltsangabe-Feld aus.
Wie ich die Grafik (bzw nur die URL zur Grafik) in die CSS bekomme, weiß ich nicht... leider.
Im Grunde soll es (pseudocode-mäßig) am Ende so aussehen:
...
20.data = levelfield:-1, getBorder, slide
20.wrap = background: url('|');
...
.. also die URL in die CSS geschrieben werden.
Wäre für JEDE Hilfe dankbar.
Gruß
Hallo,
sorry für Mehrfachpost; das Problem habe ich mit obiger Lösung gelöst, jedoch würde ich gerne noch etwas spezifizieren:
css = PAGE
css {
typeNum = 22
config{
additionalHeaders = Content-type: text/css
disableAllHeaderCode = 1
}
stdWrap.required = 1
stdWrap.wrap = |
10 = TEXT
10.value (
.content_header_pic {
)
20 = TEXT
20.data = levelmedia: -1
20.listNum = 0
20.wrap = background: url('uploads/media/|');
30 = TEXT
30.value (
border-top: 8px solid #0D337A;
height: 105px;
width: 100%;
}
)
}
Damit wird eine CSS-Datei dynamisch erstellt, die einem DIV mit der class 'content_header_pic' die CSS-Werte (Hintergrundbild, ..) vergibt. Das Bild wird aus dem Media-Feld einer Seite geladen.
Jetzt würde ich gerne, dass das DIV ausgeblendet wird, wenn es KEIN Bild für die aktuelle Seite gibt. Dafür würde es schon ausreichen, wenn die CSS einfach nicht erstellt wird.
Aber wie mache ich das? Mit ifEmpty habe ich schon ein wenig rumgespielt, aber leider nicht zum Laufen gebracht..
Gruß
Hehe, auch wenn der Thread nur aus Posts von mir besteht, füge ich dennoch noch meine Lösung bei, die ich eben endlich geschafft habe:
css = PAGE
css {
typeNum = 22
config{
additionalHeaders = Content-type: text/css
disableAllHeaderCode = 1
}
stdWrap.required = 1
stdWrap.wrap = |
10 = TEXT
10.value (
.content_header_pic {
)
20 = TEXT
20.data = levelmedia: -1
20.listNum = 0
20.wrap = background: url('uploads/media/|');
30 = TEXT
30.value (
border-top: 8px solid #0D337A;
height: 105px;
width: 100%;
}
)
30.if {
isTrue.data = levelmedia: -1
}
}
Ich erstelle also eine dynamische externe CSS-Datei, die einem DIV die CSS-Eigenschaften zuweist. Werte wie Höhe und Breite der DIV-Box werden aber nur geschrieben, wenn im Media-Feld der Seite etwa vorhanden ist:
30.if {
isTrue.data = levelmedia: -1
}
Ist kein Bild vorhanden, werden die Werte nicht geschrieben und somit wird der DIV dann auch nicht angezeigt. Das was ich wollte.
Ich bin so stolz. Ich geb mir einen aus. Entschuldigt mich. #giggle#