Seite 1 von 1

Illustrationsmodul für tabellenhintergrund?!

Verfasst: Mi 8. Feb 2006, 13:14
von marcello89
Hallo Zusammen,

ich habe eine frage ich wollte das Illustrationsmodul für den Hintergrund einer tabelle nutzen hat damit schonmal jemand erfahrung gemacht? wie ist das lösbar? kann mir jemand helfen?!
gruß und danke Marcello

Verfasst: Mi 8. Feb 2006, 13:51
von HerrB
Bist Du sicher, dass Du da Hilfe brauchst? Du erstellst ein weiteres Modul, kopierst Input und Output aus dem vorhandenen ins neue.

Die entscheidende Stelle für die Ausgabe ist diese Zeile:

Code: Alles auswählen

echo '<img src="'.$image.'" width="'.$width.'" height="'.$height.'" alt="'.mi18n("Illustration").'" title="'.mi18n("Illustration").'"/>';
D.h. Du musst nur über eine entsprechende Style-Angabe $image als Hintergrundbild festlegen, der Rest fällt weg.

Daraus ergibt sich, dass Du entweder mit diesem Modul eine CSS-Style-Spezifikation für eine Klasse, die Du an die Tabellen bindest, ausgibst oder direkt im Output Deine Tabelle festlegen und ausgeben musst.

Gruß
HerrB

Verfasst: Mi 8. Feb 2006, 14:23
von marcello89
wie müsste ich dann das modul reinmachen
habe das mommentan so

Code: Alles auswählen

<table vspace="0" hspace="0" cellspacing="0" cellpadding="0" class="header" background="<container id='25' name='Background' types='Illustration' default=''></container>">
nur so kann ich es im template nichteinmal auswählen.

Verfasst: Mi 8. Feb 2006, 14:30
von HerrB
Ja, das war zu erwarten (innerhalb eines Tags ein anderes Tag...).

Du könntest es so machen:

Code: Alles auswählen

<container id='25' name='TableBackground' types='Illustration' default=''></container>
<table vspace="0" hspace="0" cellspacing="0" cellpadding="0" class="header" class="IllustratedTable">
Das Modul (welches ich nicht mehr Illustration nennen würde) gibt dann so etwas aus:

Code: Alles auswählen

echo '<style type="text/css">'."\n";
echo '<!--'."\n";
echo '.IllustrationTable {'."\n";
echo '   background-image: url('.$image.');'."\n";
echo '}'."\n";
echo '-->'."\n";
echo '</style>'."\n";
Bei url(... kann es noch notwendig werden, einen Pfad davor zu setzen oder damit ein bisschen zu experimentieren.

Gruß
HerrB

Verfasst: Mi 8. Feb 2006, 14:38
von marcello89
kannst du mir das nochmal in klartext erklären blicke das noch nicht so ganz :-/

Verfasst: Mi 8. Feb 2006, 15:05
von HerrB
Aaaalso. Du setzt im Layout vor Deiner Tabelle (irgendwo zwischen Beginn der Seite und der Tabelle) einen Container.

Dieser Container bekommt Dein Bestimme-Background-Bild-Modul. Das Modul ist mit dem Modul Illustration soweit identisch, außer, dass statt

Code: Alles auswählen

echo '<img src="'.$image.'" width="'.$width.'" height="'.$height.'" alt="'.mi18n("Illustration").'" title="'.mi18n("Illustration").'"/>';
dieser Code ausgegeben wird:

Code: Alles auswählen

echo '<style type="text/css">'."\n";
echo '<!--'."\n";
echo '.IllustrationTable {'."\n";
echo '   background-image: url('.$image.');'."\n";
echo '}'."\n";
echo '-->'."\n";
echo '</style>'."\n";
Nun musst Du nur noch der Tabelle über die Klasse sagen, dass es da eine CSS-Definition zu beachten hat:
<table vspace="0" hspace="0" cellspacing="0" cellpadding="0" class="header" class="IllustratedTable">
Die Logik ist:
- Modul gibt CSS-Definition aus
- Tabelle beachtet CSS-Definition

Noch Fragen, Hauser?

Gruß
HerrB

Verfasst: Mi 8. Feb 2006, 15:28
von marcello89
Danke vielmals!
Funktioniert!