Inhalt eines iframes extern formatieren

Hallo liebe Community,

ich habe eine Internetseite mit einem grünen Hintergrund, in diese Seite binde ich mit Hilfe eines iframes eine andere ein, im Code des iframes sind keine Angaben zu einem Hintergrund und auch die eingebundene Seite besitzt keine Angaben zum Hintergrund daher ist er transparent und die eingebundene Seite nimmt den selben Hintergrund an, einen grünen.

Im Code des iframes und auf der eingebundenen Seite sind keine Angaben bezüglich der Schriftgröße, Schriftart und Schriftfarbe. Auf der Seite mit dem grünen Hintergrund in der sich der iframe befindet aber schon, dort ist festgelegt die Schriftfarbe soll pink sein, eine Größe von -1 haben und es soll Arial sein, trotzdem bleiben bleibt der Inhalt des eingebundenen Seite wie folgt formatiert: die Größe bei 0, die Farbe schwarz und die Schriftart Times New Roman.

Wieso übernimmt ein Seite ohne genaue Angaben die Einstellungen des Hintergrunsd der Seite auf der sie eingebunden ist aber nicht die Einstellungen der Schrift?

Wie kann ich von der Seite aus auf der sich der iframe befindet den Inhalt des iframes formatieren? (Es geht dabei nur um die Schrift-Attribute)

Habe schon eioniges probiert, unter Anderem: <font face...><iframe>...</iframe></font> funktioniert leider nicht, wäre auch nur zu schön gewesen wenn es so einfach wäre.

Hoffe ihr könnt mir helfen. :slight_smile:

Liebe Grüße
MaxT :wink:

Edit:
Die einzubindede Seite kann ich natürlich auch bearbeiten, es geht eben darum dass egal wo die Seite eingebundenen wird die die Schrift-Attribute derer übernimmt.

Was du mit dem iframe einbindest, ist immer ein komplettes und
eigenständiges Dokument, welches nichts mit dem zu tun hat,
welches das iframe enthält.

Zumindest für die Kombination (X)HTML+CSS ist auch der
Hintergrund undefiniert, wenn dieser nicht für das Dokument
angegeben ist, auch wenn es per iframe eingebunden wird.
Man sollte sich also nicht darauf verlassen, was einzelne
Programme dann tun. Plausibel ist bei (X)HTML eigentlich eher,
daß die Hintergrundfarbe von den Voreinstellungen im browser
übernommen wird, statt den Kram transparent zu machen.
Auch die Angabe eines transparenten Hintergrundes für das
komplette Dokumente ist bei (X)HTML undefiniert.

Recht einfach ist ein einheitlicher Stil bei verschiedenen
Dokumenten zu erreichen, wenn für alle Dokumente auf dieselbe
Stilvorlage (CSS-Datei) verwiesen wird.

Statt komplette Dokumente per iframe einzubinden, kann es sich
auch empfehlen, Dokumentfragmente mittels PHP zu einem
Dokument zusammenzustellen, ist dann auch besser mit einer
gemeinsamen Stilvorlage zu dekorieren.

Vielen Dank für deine Antwort, bezüglich des Hintergrunds werde ich mir da sganze mal mit anderen Browsern ansehen.

Dann frage ich mal anders. Und zwar geht es um das wissen-script.de/
Zur Zeit ist es ein iframe, natürlich liese sich als Code zum einbinden auch einfach eine Tabelle machen mit dem Kücken und per include den Text aus lesen, dann wäre das alles kein Problem. Allerdings sehe ich bei der Variante den Backlink stark gefährdet. Natürlich, wo ein Wille ist, ist auch ein Weg, das Kücken könnte man auch mit HTML-Ebenen oder sonst wie verdecken/wegbasteln usw.

Sehr ihr irgendeine Möglichkeit es anzustellen dass sich der Inhalt des iframes an die Seite in der er sich befindet automatisch anpasst?

Du kannst im iframe ein PHP-Skript referenzieren und dann an
die URI einen entsprechenden GET-Parameter anhängen.
Der kann dann vom Skript ausgwertet werden und in der Ausgabe
kann dann der Inhalt entsprechend dem GET-Parameter
realisiert werden.

Umgekehrt wäre es deutlich schwieriger bis undurchführbar, das
Dokument mit dem iframe daran anpassen, was für ein Inhalt
im referenzierten Dokument vorliegt.

Sehr interessant, vielen Dank!

Halten sich dann auch die Ladezeiten in Grenzen wenn für Hintergrundfarbe, Schriftfarbe, Schriftgröße und Schriftart immer erst die Werte übergeben werden? Aktuell braucht das script schon zwischen 0,7 und 1,1 Sekunden bis es angezeigt wird.

so viel wird das nicht ausmachen. Du musst nur aufpassen, dass keine falschen Daten eingeschlust werden. Am besten nur A-Za-z0-9 als Eingabe zulassen :wink:

Ok, werde es berücksichtigen.

Aber was könnte man denn damit böartiges anstellen wenn man den Inhalt der Variablen beliebig ändern kann?

Mal eine kleine Zwischenfrage:
Welche Schriftarten sollte ich im Generator für die Webmaster anbieten außer Arial, Times New Roman und Garamond?

Stelle dir als Variableninhalt folgendes vor:

das Ergebnis:

Ist jetzt bei deiner Seite zwar nicht unbedingt schädlich, aber trotzdem unschön.

Zur Zwischenfrage: Garamond am besten gar nicht (wer hat das schon auf dem System, da nicht ganz billig :wink: )
Du kannst im groben die Schriftlisten hier verwenden: (im Abschnitt Stack Your Deck) unitinteractive.com/blog/2008/06 … nt-stacks/
Diese in ein Array in deinem Skript einfügen und einfache Alias-Namen für die GET-Prameter verwenden.

So, alles fertig so weit. Nun bin ich dabei das ganze gegen XSS zu schützen.
Reicht es wenn ich jede Variable die ich finden kann in htmlspecialchars() stecke?

Ich habe einen Generator, der vom Nutzer eingegebene Werte auf der selben wieder ausgibt und den hier angesprochenen iframe der sich über GET definiert.

Liebe Grüße

MaxT :wink:

Kommt drauf an, was du mit den Nutzereingaben machst.
Wenn das nachher nur in Attributwerten steht, sollte das
ausreichen (wenngleich dann gegebenenfalls ungültige Werte
in der Ausgabe auftauchen können). Auf die passende Maskierung
von Anführungszeichen solltest du jedenfalls noch achten.

Bedenklich wird das Drama, wenn du beginnst, Dateinamen oder
URIs zu akzeptieren, die du dann mit PHP in die eigene Seite
per include einbindest - dafür reicht das nicht.