Hans-PeterRieger: Div-Suppenkonstrukte oder design-images..

Beitrag lesen

Hallo Melanie

ganz ehrlich: ich hab fast kein Wort verstanden.. ;(

oh, verzeihung. So war das nicht gemeint. Ich versuch es mal etwas anders. Deine Frage war (in etwa): "Darf ich DIV-Suppen verwenden oder soll ich lieber nach eine alternativen Methode zur Seitengestaltung suchen?". Die übliche Experten-Antwort ist: "DIV sind gut, DIV-Suppe aber böse!". Nachgefragt: "Warum sind DIV-Suppen böse?" und die Antwort dazu: "Weil (a) niemand mehr das entsprechende HTML lesen kann und weil es (b) üble Seiteneffekte mit der CSS-Formatierung geben kann, wenn man einen Fehler macht."

So weit verständlich?

"Gut" ... dachte ich mir ... "Was wäre denn, wenn ich (a) das HTML gar nicht mehr lesen _will_ und (b) ich "Software" statt "Brainware" verwende um die Konsistent meiner Seiten sicherzustellen.

Immer noch verständlich?

Das Ergebnis ist ein ziemlich umfangreicher PHP-Code, der mir (ähnlich wie bei einem komerziellen CMS (Content Management System)) Textbausteine aus einer Datenbank ließt, das gewünschte Seitenlayout ebenfalls aus einer Datenbank ließt (abhängig z. B. vom Namen des Besuchers der Seite, oder der Tageszeit, oder der Mondphase oder was auch immer) und daraus eine HTML-Seite automatisch generiert. "Automatisch" heißt dabei: Es wird ein PHP-Script verwendet, von dem ich weiß, dass es keine Fehler macht. Dabei können bis DIV-Hierarchien bis zu 10 Ebenen entstehen - aber interessiert mich das nicht, weil ich das (individuelle) Seiten-HTML nicht mehr ansehe sondern (schlimmstenfalls, solange noch Fehler vorhanden sind) die (allgemeingültigen) PHP-Scrips.

Ok, ich gebe zu, das ist in drei Sätzen nicht einfach zu beschreiben. Zumal ich damit nicht mal 5% der Funktionalität beschrieben habe.

Kleines Beispiel gefällig (das allerdings auch nicht schlauer macht)?: Quasi jede Seite sieht in etwa wie die folgende "HomePage" aus:

<?php
  // define page specific constants
  $Path2Root     = "../../";
  $FileTitle     = "HomePage";
  $FileName      = "index.php";

require($Path2Root . "Page/prep.inc.php");

// include THIS page main content
  $TimeLeft  = floor((mktime(0, 0, 0, 7, 29, 2005) - time()) / 86400);
 require("Content.inc.php");

$contBox1  = "<div class="cont_ar48 cont_ttop">" . $contText01a . "</div>" .
               "<div class="cont_al48 cont_ttop">" . $contText01b . "</div>";
  $contBox2  = "<div class="cont_ab01 cont_ttop">" . $contText02  . "</div>";
  $contBox3  = "<div class="cont_ac01 cont_ttop">" . $contText03  . "</div>";
  $contBox4  = "<div class="cont_ar30 cont_ttop">" . $contText04a . "</div>" .
               "<div class="cont_al65 cont_ttop">" . $contText04b . "</div>";
?>

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html>
<?php require($Path2Page . "head.inc.php");?>
  <body>
    <div class="OuterDivBox" style="width:<?php echo $LefBox?>px; top:0px; left:0px;">
<?php require($Path2Page . "left.inc.php");?>
    </div>
    <div class="OuterDivBox" style="width:<?php echo $BigBox?>px; top:0px; left:<?php echo $LefBox?>px;">
<?php DrawBox("QuadBox", "none",       &$BoxTitle, $BigBox-$MarginLeft, "60",  "left");?>
<?php DrawBox("QuadBox", "none",       &$BoxState, $BigBox-$MarginLeft, "30",  "left");?>

<?php DrawBox("TitleBox", $contHead01, &$contBox1, $SmlBox-$MarginLeft, "170", "left");?>
<?php DrawBox("TitleBox", $contHead02, &$contBox2, $BetBox-$MarginLeft, "170", "left");?>
<?php DrawBox("TitleBox", $contHead03, &$contBox3, $SmlBox-$MarginLeft, "170", "right");?>
<?php DrawBox("TitleBox", $contHead04, &$contBox4, $SmlBox-$MarginLeft, "396", "left");?>
<?php DrawBox("NoBoBox",  "none",      &$BoxBild,  $MedBox-$MarginLeft, "330", "right");?>
<?php DrawBox("QuadBox", "none",       &$BoxState, $MedBox-$MarginLeft, "60",  "right");?>
<?php DrawBox("QuadBox", "none",       &$BoxState, $BigBox-$MarginLeft, "30",  "left");?>
    </div>
  </body>
</html>

Gruß
Hans-Peter