Hi zusammen,
Habe ein dreispaltiges, CSS basiertes Layout (float).
Die mittlere Spalte (Content) wird im CSS mit einer fixen Breite von 450px definiert. Die linke und rechte Spalte haben ebenfalls eine fixe Breite.
Nun habe ich bei einer Seite die rechte Spalte mit einem Extension Template entfernt, damit der content mehr Platz hat:
page.10.marks.RIGHTCOL = TEXT
page.10.marks.RIGHTCOL =
Passt auch wunderbar.
Mein Problem:
Gibt es irgendeine Möglichkeit, die Breite der mittleren Spalte über das Extension Template zu ändern (verbreitern)? zb mit Inline CSS (das die Werte des Stylesheets überlagert)??
Danke schon vorweg für die Hilfe,
Ciao,
Mike
Wie wärs mit unterschiedlichen IDs im Layout, dass dann per CSS definiert wird.
Gruß
Michael
Hi,
Und was soll das bringen? Dann hab ich jedenfalls zumindest einen leeren Divti im Template rumliegen... Ne, dass kann nicht die Lösung sein. Dass ich verschiedene Klassen Selektoren definieren kann ist mir schon klar. Nur wie kann ich die zur Laufzeit dem Divti über t3 zuweisen?
Ciao,
Mike
Du verwendest 2 HMTL-Templates!
Die Div IDs in der 3 spaltigen Variante sind z.B. links,mitte,rechts
Die in der 2-Spaltigen z.B. links2,mitte2
Jetzt kannst Du den unterschiedlichen DIVs entsprechend per CSS die Breite zuweisen.
Das jeweilige Template kannst Du entweder über Conditions, Template-Selector oder manuell über ein Ext. Template einbinden.
Also wenn das keine Lösung ist ... 😉
Gruß
Michael
Hi,
Ja, die Lösung war mir klar 8-)
Aber genau das splitten in zwei Vorlagen möchte ich vermeiden. Was ja auch unnötig wäre, wenn ich den style="width:xy" mittels typo3 während der laufzeit festlegen könnte (wäre auch viel eleganter).
Du kannst Dir das ganze hier ansehen:
Home: normal dreispaltig
Tutorials: nur linke spalte (hier sollte der content Bereich mittels inline css oder mit einer anderen lösung auf die gesamte breite gebracht werden).
http://bluegate.nit.at
Vielleicht hast Du ja noch eine Idee 😉
Ciao,
Mike
Na wenn du inline Styles akzeptierst, dann setz doch in dein Template einen Marker ala ###MAIN_WIDTH###
also dann im Template so:
<div style="width: ###MAIN_WIDTH###">###HAUPTCONTENT###</div>
Dann ersetzt du denn halt entsprechend mit
marks.MAIN_WIDTH = TEXT
marks.MAIN_WIDTH.value = 450px
Grüße
Christian
Du kannst auch im page header mit einem Ext. Template die CSS Anweisungen überschreiben.
Aber im Grund genommen nimmt sich das alles vom Aufwand her nicht viel.
Die Template Variante hätte noch den Vorteil, daß man z.B. mit Hilfe des Template Selector die Auswahl dem Redakteur überlassen kann.
Gruß
Michael
Hi,
Das mit dem Template Selector klingt interessant. Bin leider noch ein Halb-Noob bei T3 😉
Werd mal sehen, was ich dazu finde. Kennst Du ein gutes Tut zu diesem Thema?
Ciao,
Mike
@Kitsunet:
Danke, auch eine gute lösung mit dem Marker...
Dachte es gibt irgendeine funktion in ts, die es erlaubt direkt auf die style Eigenschaften eines Containers zuzugreifen.
Obwohl Inline CSS ja nicht sonderlich schick ist (wenn auch praktikabel 🙂
Hallo,
ich habe die Templateauswahl nicht über die Extension gelöst sondern über die Seiteneigenschaften. Folgendes hab ich als Extension-Template angelegt.
#-------------------------------------------------------------------
# Festlegen des Templates 2-Spaltig
#
page.10 = TEMPLATE
page.10.template = FILE
[globalVar=TSFE:page|layout=0]
page.10.template.file = fileadmin/template/kt-org/css-layout.html
page.includeCSS.file1 = fileadmin/template/kt-org/css/import_2_col.css
page.includeCSS.file2 = fileadmin/template/kt-org/css/iehack_2_col.css
[global]
# Festlegen des alternativen Templates 3-Spaltig
# Layout 1
# [browser=msie]
[globalVar=TSFE:page|layout=1]
page.10.template.file = fileadmin/template/kt-org/css-layout.html
page.includeCSS.file1 = fileadmin/template/kt-org/css/import_3_col.css
page.includeCSS.file2 = fileadmin/template/kt-org/css/iehack_3_col.css
[global]
Und dann folgendes noch ins TS-Config der Rootseite
#-----------------------------------------------------
# TCEForms anpassen für Layoutwahl
TCEFORM.pages.layout.altLabels.0 = 2-Spalten
TCEFORM.pages.layout.altLabels.1 = 3-Spalten
TCEFORM.pages.layout.removeItems = 2,3,4,5,6
#------------------------------------------------------
Vielleicht hilfts.
Gruß
Daniel
Hi,
Also ich habe jetzt versucht es so zu lösen (nur in TS):
config.TCEFORM.pages.layout.altLabels.0 = 2-Spalten
config.TCEFORM.pages.layout.altLabels.1 = 3-Spalten
config.TCEFORM.pages.layout.removeItems = 2,3,4,5,6
# DEFAULT PAGE OBJECT
page = PAGE
page {
# PAGE SETUP / HEADER & META
includeCSS {
[globalVar=TSFE:page|layout=0]
file1 = fileadmin/css/main_3col.css
file1.media = screen
[global]
[globalVar=TSFE:page|layout=1]
file1 = fileadmin/css/main_2col.css
file1.media = screen
[global]
}
Nur leider ohne Erfolg :o(
Dieses TCTFORM Object definiert die Auswahlfelder beim Layout einer Seite nehme ich an, oder??
Ciao,
Mike
Gut, mit config.* gehts leider nicht. Habe es jetzt auch als TSConfig im Root angelegt und es passt alles.
Nur die Darstellung der Seite geht nicht mehr, seit ich die global Verzweigung eingefügt habe. Liegt möglicherweise daran, dass es kein Extension Template sondern das Projekttemplate im Root ist!?
Hast Du eine Idee, wo das Problem liegen könnte?
Hier nochmal der Code im TS der Root Site:
# DEFAULT PAGE OBJECT
page = PAGE
page {
# PAGE SETUP / HEADER & META
typeNum = 0
includeCSS {
[globalVar=TSFE:page|layout=0]
file1 = fileadmin/css/main_3col.css
file1.media = screen
[global]
[globalVar=TSFE:page|layout=1]
file1 = fileadmin/css/main_2col.css
file1.media = screen
[global]
}
Danke vorweg,
Ciao,
Mike
*gebetsmühle* conditions nicht innerhalb von geschweiften klammern*gebetsmühle*
georg
Kaum macht man es richtig, funktionierts auch schon 😉
Wenn das so eine bekannte Regel ist wundere ich mich, dass in dem schlauen T3 Buch nichts zu finden ist zu diesem Thema.
Gilt das in T3 prinzipiell für alle Conditions?
Naja, jetzt merk ichs mir jedenfalls,
Danke & Ciao,
Mike
Hi,
Es hat sich jetzt doch noch eine Frage ergeben (was die Einbindung der Stylesheets in den RTE betrifft)..
Siehe:
#579351
Hat hier vielleicht irgendjemand einen Tipp?
Ciao & Danke,
Mike