Zum Inhalt springen

Unterschiedliche CSS-Styles pro Content-Bereich

Erstellt am 13. Mai 2003 · 7 Antworten · letzte Antwort am 14. Mai 2003

Tags: Templates & Layouts, Frage

chriso ·

Hallo Forum,

Ich ersetze meine Marker mit folgendem Code, möchte aber nun im Bereich contentrechts andere CSS-Styles verwenden als im Content. Also statt <h1> gerne <div class=h1rechts> oder statt <p> gerne <div class=bodycontentrechts>.
Dafür hab ich leider bisher keinen Ansatzpunkt. Die unten auskommentierte Zeile macht natürlich nur einen Wrap um den gesamten Bereich, das bringt also nichts o.O Ich brauche wohl einen Wrap um Header/Titel und einen um Body. Nur wie ?

Mein Code sieht so aus

temp.mainTemplate {
  template =< plugin.tx_automaketemplate_pi1

  workOnSubpart = DOCUMENT_BODY
  subparts.menu_1 < temp.menu_1
  subparts.klickpfad < temp.klickpfad
  subparts.content < styles.content.get
  subparts.contentrechts < styles.content.getRight
  #subparts.contentrechts.wrap = <div class="h1rechts"> | </div>
}

page = PAGE
page.typeNum = 0
page.stylesheet = fileadmin/template/stylesheets/style.css 
page.10 < temp.mainTemplate

Danke vorab.

Gruß
Christian

chriso ·

Hallo Thomas,

vielen Dank für die schnelle Antwort. Den Artikel hatte ich vorher schon gesehen, aber (noch) nicht verstanden. Mein Problem ist, an welcher Stelle im SETUP formatiere ich meinen contentrechts mit

...header.wrap = <div class="h1rechts"> | <div>

Mein Versuch mit

subparts.contentrechts.header.wrap = <div class="h1rechts"> | </div>

geht jedenfalls nicht.

Das Ganze soll natürlich nur für contentrechts gelten und nicht für den anderen Content.

Gruß
Christian

maka77 ·

Hi,

ich hab ein frameset und mach das per inline CSS:

#**************************
# Internen CSS Stylesheet für den Frame "mainpage" definieren
mainpage.CSS_inlineStyle (
a:link { font-family:arial; font-size:10pt; color:#000000; text-decoration:none; } /* noch nicht besuchte Ziele */
a:visited { font-family:arial; font-size:10pt; color:#000000; text-decoration:none; } /* besuchte Ziele */
a:hover { font-family:arial; font-size:10pt; color:#000000; text-decoration:underline; } /* Verweise bei "MouseOver" */
a:active { font-family:arial; font-size:10pt; color:#ffffff; text-decoration:none; } /* Angeklickte Verweise */
a:focus { font-family:arial; font-size:10pt; color:#000000; text-decoration:none; } /* Verweise, die Fokus erhalten */
)

vielleicht hilft Dir das weiter.

MfG,
maka77

sacha ·

Hi,

wie man dem Inhalt je nach Spalte unterschiedliche Wraps zuweist, ist hier erklaert: #21282

Vielleicht kann Mathias ja erklaeren, wie man das mit seiner Loesung hier:
#2680

verwursten kann.

Ciao,

Sacha

chriso ·

Das wäre nicht schlecht.
Zumal ich leider an dem Beispiel noch nicht erkennen kann, was ich bei mir ändern muss, damit es klappt mit meinen Makern und Templates.

Christian

wolfsblut ·

Hallo Christian,

hier meine Lösung:
im html-template HEAD und INHALT als Marker definieren:

unter Setup.....
...
page.20 {
marks.HEAD = CONTENT
marks.HEAD {
table = tt_content
select.orderBy = sorting
select.max = 1
}
marks.INHALT = CONTENT
marks.INHALT {
table = tt_content
select.orderBy = sorting
select.begin = 1
}
}
...

damit wird immer das erste Content-Element dem HEAD Marker zugewiesen und die restlichen Elemente nach dem ersten zu INHALT.

Ich denke, daß läßt sich noch verbessern sowie auf links, mitte, rechts und rand jeweils anwenden.

Gruß Wolf...ich hoffe es war das was Du meintest :-)

chriso ·

Hallo Wolf,

das ist ein ganz guter Ansatz und ich bin schon einen Schritt weiter. Ich mache es jetzt so (ist sicher noch optimierbar). Damit habe ich wunderbar Header und Bodytext einzeln mit unterschiedlichen DIVs gewrapped.

marks.h1rechts = CONTENT 
marks.h1rechts { 
   table = tt_content 
   select.pidInList = 1
   select.orderBy = sorting 
   select.where = colPos=2
   select.begin = 0
   select.max = 1 
   wrap = <div class="h1rechts"> | </div> 
   renderObj = TEXT
   renderObj.field = header
} 

marks.c1rechts = CONTENT
marks.c1rechts { 
   table = tt_content 
   select.pidInList = 1
   select.orderBy = sorting 
   select.where = colPos=2
   select.begin = 0
   select.max = 1
   wrap = <div class="bodytextrechts"> | </div> 
   renderObj = TEXT
   renderObj.field = bodytext
}

Aber jetzt stellt sich sofort das nächste Problem: Die Links im bodytext gehen nicht mehr und werden in der HTML-Ansicht des Browsers als typolink der Form <LINK 11>bla bla</LINK> angezeigt. Das scheint am renderObj zu liegen.

Weiss jemand, was ich machen muss, damit die Links korrekt umgesetzt werden ?

Gruß
Christian