php: iframes o.ä. ohne hintergrund?

  • Ersteller mittichec
  • Erstellt am
mittichec

mittichec

Registriert
08.04.04
Beiträge
5.476
Reaktionen
28
Punkte
5.877
Moin ihr spax.

Also, ich hätt mal grad noch ne kurze frage am rand. Ich hab ne php Datei, die in etwa wie folgt aussieht.
SO IN ETWA

Jetzt würd ich selbstredend gerne 2 Frames (evtl 3) einfügen, diese sollen aber nicht den Hintergrund bzw. die grafik überdecken, sondern entweder transparent drüber liegen, oder mit ohne Hintergrund, also so, dass die original jetzt zu sehende Grafik quasi "durchscheint" oderkomplett nur vom Text, welcher in den frames steht, überdeckt wird.

Wenn ich jetzt mit Iframes arbeite, was ich gerne tue, dann haben die natürlich immer ihren eigenen Hintergrund, so dass es alles nicht hinhaut.

Weiss jemand Abhilfe?

Danke euch im Vorraus für etwaige hilgestellungen.

Mittichec
 
Naja, also soviel ich weiß, kann ein iFrame nicht transparent sein. Einfach deshalb, weil in dem iFrame ja "nur" eine weitere Seite angezeigt wird. Und durchsichtige Internetseiten gibt es in der Form ja nicht.

Genau weiß ich jetzt nicht, wie Dein Layout/Design aussehen soll, aber lässt sich das nicht vielleicht mit Tabellen und/oder Layern und CSS realisieren?

Grüße,
Alsion
 
Hi!

Ich würde dir raten keine Iframes sondern einfach divs (Inhalt) zu verwenden.

Nachdem du die Möglichkeit hast PHP einzubinden greifst du auf die andere Datei einfach mit "<?php include('Dateiname.php') ?> zu.

Siehe auch:
http://de.php.net/manual/de/function.include.php

Falls dir das zuwenig Info ist, gib Bescheid ;-)

mfg Thomas
 
.... und (uebergreifend) formatieren mit CSS.

M
 
Hi,
also das Problem ist halt, dass ich diese Hintergrundgrafik habe und gerne "über" der Grafik einen Frame erzeugen würde.

Wenn ich das jetzt mit Tabellen mache, müsste ich ja jedesmal wenn ich die Inhalte der Tabelle ändere, die ganze Seite neu aufbauen, also auch die Hintergrundgrafik.

Ich würde gerne auf angegebener Seite oben oder links eine Navigationsleiste einfügen, und mittich dann eine Art Inhaltsframe.

Und beides sollte die Hintergrundgrafik nicht verdecken.

Und ich wüsste halt nicht, wie ich das machen sollte.....


Edit: CSS Styles verwende ich sowieso.
der rest, siehe oben.
 
Also vielleicht habe ich Dich jetzt falsch verstanden, aber:

1) Kannst Du die Grafik doch in den Hintergrund packen und per CSS sagen, dass die nicht scrollen und nicht kacheln darf. Dann Deine Seite einfach per Tabelle aufbauen. Die Grafik sieht man da doch durch

2) Du kannst einen DIV-[g=85]Layer[/g] benutzen. Der ist doch transparent.

Grüße,
Alsion
 
Ideenausbau (mit PHP):

Eine Seite (page.php) für alles

enthält das Menü und ein für den Inhalt.

im Menü schreibst du dann
page.php?view=seite1.php
page.php?view=seite2.php
usw.

im div schreibst:


<?php

$page = $_REQUEST['view'];
include($page);

?>


ohne es getestet zu haben, sollte aber so funktionieren.
 
Warum MUSS es denn ein Frame sein?
Wenn Du den Hintergrund und das Menu etc auf jeder anzuzeigenden Seite haben willst, brauchst Du das - und auch den Inhaltsbereich - ja nur in einem externen CSS-File definieren.

Ich denke, Du solltest vielleicht noch ein bisschen ausfuehrlicher beschrieben, was Du insgesamt machen willst... ,)
 
OK, ich danke euch, aber ich werde nochmals beschreiben, was ich vorhabe:

die Page wie unten Verlinkt soll das "gerüst" darstellen.
Innerhalb dieses gerüstes hätte ich gerne, wie auf unserer alten page zu sehen, die gleichen inhaltsbereiche.

Bislang habe ich das so gelöst, dass ich mir grafiken zurechtgeschnitten habe, die genau passten, jetzt würde ich in den entsprechenden bereichen einfach gerne inhalte aus externen dateien laden, und diese quasi "über" der hauptdatei (link siehe unten) laden.

kann man das jetzt verstehen? ich weiss es nicht genau.

das mit dem include hatte ich auch angedacht, aber das passt nicht.
und wie ich mit css inhalte laden kann, die dann über eine navigationsleiste angesteuert werden können, kapier ich nicht.

grüße, mitti
 
hallo,

ein Bekannter von mir hatte letztens das gleiche Problem - allerdings ohne PHP - wir haben auch ziemlich lange dran gesessen aber es geschafft!

Schau dir mal die Quellcodes von seiner Seite an:

http://www.ambersnhope.de

er wird bestimmt nichts dagegen haben, wenn du spickst ;-)

kurze Erläuterung:
er hat das Bild auseinander geschnippelt, in den iframe eingefügt und im Body "background-attachment:fixed;" angegeben

hoffe, es hilft dir weiter

Edit:
.... ups, habe zu lange gebraucht ... dann doch nicht :-/
 
>> wie auf unserer alten page zu sehen,...
Hast Du die selber gemacht?

Wie Du mit PHP die ganze Geschichte steuerst, habe ich keinen Plan von.

Und mit CSS kannst Du auch nicht solche Inhalte laden, wie Du es gerne haettest.
Aber Du kannst mit einem separaten Stylesheet, auf das Du dann von den einzelnen Seiten aus mit einer Zeile Code referenzierst, die Foramtierung jeder Seite gleich halten - was den Aufbau aus Einzelseiten stark vereinfacht.

Meines Wissens kannst Du auch externe Inhalte (zb via include eingeschlossene...) mit CSS verbindlich formatieren.

Hier findest Du ne Menge zum Thema:
http://de.selfhtml.org/css/index.htm
 
Also ich hab das folgendermassen gelöst:

man baut sich (wie bereits beschrieben wurde) eine Seite, meinetwegen "index.php?view=myPage". Die Seite "index.php" enthält die ganzen Layout-Sachen und die Navigation. In der index Seite siehts dann so aus:

<html>
<head>
<style type="text/css">

#mainFrame
{
widht: 200px;
height: 200px;
overflow: auto;
}

</style>
</head>
<body>
... (Anfang von Navigation und Layout) ...
<?
include($view);
?>
... (Ende von Navigation und Layout) ...
</body>
</html>


Durch die CSS Infos am Anfang der Seite wird die Größe festgelegt, mit dem "overflow" Attribut wird dem Browser gesagt, er soll, falls der Inhalt des div Elements größer als die 200x200 Pixel ist, Scrollbalken anbieten. Das ist meine Methode. Frames und iFrames sind so eine Sache, ist halt kein richtiger HTML Standard (war eine Netscape Erweiterung). Die ganzen Bilder für die Navigation sollte der Browser eigentlich buffern, so dass die nicht jedesmal übertragen werden müssen.
 

Neue Antworten


Oft gelesene Themen

Zurück
Oben