Hallo
Ich habe auf meiner Seite eine begrenzte Höhe und Breite. Deshalb möchte ich den Inhalt in diesem Bereich in ein iframe packen um den Inhalt zu scrollen.
An dieser Stelle habe ich zwei verschiedene Inhalte (also eine als Inhaltsverzeichnis und die untergeordneten Seiten als Inhalt)
Inhaltsverzeichnis:
page.10.marks {
########################################
# Inhaltsverzeichnis #
########################################
INHALT.10.data = DB : pages : 88 : title
INHALT.15.special.value = 88
INHALT.15.1.NO.linkWrap = |<br>|*||<br>|*|
INHALT.20.data = DB : pages : 89 : title
INHALT.25.special.value = 89
INHALT.25.1.NO.linkWrap = |<br>|*||<br>|*|
}
Inhalt
page.10.marks {
########################################
# Inhalt #
########################################
INHALT = CONTENT
INHALT {
table = tt_content
select.orderBy = sorting
select.where = colPos = 0
}
}
Hier ein Bild, wie das am Ende aussehn soll:
Bild: erler-familie.de/…/beispiel.jpg
Im Roten Kästchen steht der Text. Wenn nun der Text größer ist als Text in dem roten Bereich Platz ist, dann soll der Inhalt dort vertikal scrollbar sein.
Wie macht man das mit TYPO3?
mfg Benjamin
Okay, das funktioniert. Ist es aber auch möglich so etwas zu realisieren?
Ich hatte das mit NOF früher mal gemacht. Aber dazu bräuchte ich iframes. Das Problem dabei ist, dass ich den Inhalt in ein frame packen müsste - ich weiß nicht, wie das mit T3 gehen soll. Aber ich kann mir nicht vorstellen, dass T3 sowas nicht kann.
mfg Benjamin
PS: Die Notlösung währe das overflow ja immerhin schonmal. Entspricht nur noch nicht ganz meinen Vorstellungen.
Hallo!
Du kannst doch die IFrames in deinem HTML Template definieren und dann innerhalb des IFrames den Content Marker setzen. So packt Typo3 halt alles Inhalte in das IFrame.
Wenn Du die IFrames nur auf bestimmten Seiten brauchst, kannst Du ja z.B. 2 Templates (1 mit IFrame und 1 ohne) machen und je nach Seite aktivieren.
So wie ich das jetzt gemacht habe, klappt es nicht:
Auszug aus HTML Code (Datei vorlage.html):
<div id="inhalt">
<iframe name="inhalt" src="fileadmin/inhalt.html" width=100% height=100% marginwidth=0 marginheight=0 hspace=0 vspace=0 frameborder=0 scrolling=no></iframe>
</div>
HTML Code (Datei inhalt.html):
<html><body>###INHALT###</body></html>
und der TS Code, an der Stelle wo Marker ###INHALT### angesprochen wird:
page.10.marks {
INHALT = COA
INHALT.10 = TEXT
...
}
Aber in der Seite erscheint jetzt nur noch der Marker ###INHALT### und nicht der an dieser Stelle eingebundene Text.
Außerdem wird in dem iframe selber das CSS nicht mehr verwendet. Das heißt; ich habe überall einen grauen Text - nur in dem iframe erscheint der Schriftzug ###MARKER### in dem standard-Schwarz.
Wie muss ich denn den Marker im iframe ansprechen?
mfg Benjamin
Also den ###INHALT### Marker bekommt TYPO ja auch gar nicht zu Gesicht, da der Inhalt des Iframe ja erst im Browser des Users geladen wird.
Hier müsstest du vielleicht mit zwei page types arbeiten und z.B.
inhalte = PAGE
inhalte.type = 476 (irgendeine Zahl die noch nicht belegt ist)
inhalte.10 = CONTENT
inhalte.10 {
table = tt_content
select.orderBy = sorting
select.where = colPos = 0
}
außerdem halt noch dein css einbinden und was du sonst noch brauchst.
Dann in deiner eigentlichen page den iframe so einbauen, dass entsprechendes geladen wird:
page.10.marks.WasWeisIch = TEXT
page.10.marks.WasWeisIch.value (
<iframe name="inhalt" src="index.php?id={page:pid}&type=476" width=100% height=100% marginwidth=0 marginheight=0 hspace=0 vspace=0 frameborder=0 scrolling=no></iframe>
)
page.10.marks.WasWeisIch.insertData = 1
Ist jetzt vielleicht nicht 100% korrekter TS Code, aber es sollte klar sein, was ich meine.
Ich würds allerdings trotzdem mit overflow: scroll machen. Was spricht denn dagegen?
Hi ich sitze vor dem gleichen Problem. Overflow ist zwar eine sehr gute Lösung, nur hat der Opera damit Probleme. Gibt es vielleicht einen anderen Weg oder geht es nur mit Iframes?