Breite Frames nebeneinander erzwingen
Gilbert
- html
Hallo!
Ich möchte drei Frames nebeneinander erzwingen, jedes 800px breit, sodass man horizontal zur Seite scrollen muss um die anderen Frames zu sehen. Der Inhalt jedes Frames wird nicht breiter sein und daher ohne horizontalscrollen auskommen. Es geht darum dass im linken Frame (dem ersten das man sieht) der eigentliche Content einer Webseite geschieht, und in den beiden Frames rechts davon Referenzdaten, zu denen man scrollen kann wenn man sie braucht (also ohne ein anderes Fenster öffnen zu müssen).
Wie kann ich das bitteschön erreichen? Danke für alle Antworten!
Hi Gilbert,
Wie kann ich das bitteschön erreichen?
Indem Du jedem Frame eine Breite von 800 px gibst.
Viele Grüße
Mathias Bigge
Sorry, das reicht meinem Browser nicht (ie, aber das sollte unabhängig sein...)
zb: <frameset cols="800,800,800" >
Hallo Gilbert,
Ich möchte drei Frames nebeneinander erzwingen, jedes 800px breit,
Dann nimm Iframes, denn ein Frameset teilt immer nur den zur Verfügung stehenden Platz im Fenster auf. Mit überbreiten Ifgrames bekommst du auch Scrollbalken im Mutterdokument, je nachdem, wie du sie anordnest. Aber ob das schön ist?
Gruß Gernot
hallo Gernot,
nimm Iframes
Keine sehr gute Idee. Ein korrekt gebautex Frameset reicht vollkommen aus.
Grüße aus Berlin
Christoph S.
Dann nimm Iframes, denn ein Frameset teilt immer nur den zur Verfügung stehenden Platz im Fenster auf. Mit überbreiten Ifgrames bekommst du auch Scrollbalken im Mutterdokument, je nachdem, wie du sie anordnest. Aber ob das schön ist?
Gruß Gernot
Hallo Gernot,
Mir geht's darum den Verkehr zu minimieren, ein iframe in einer Seite (die ständig neu geladen und generiert wird) wird aber ebenfalls neu geladen IIRC. Und Schönheit liegt im (zugekniffenen) Auge des Betrachters -> ;)
Hallo Gilbert,
Mir geht's darum den Verkehr zu minimieren, ein iframe in einer Seite (die ständig neu geladen und generiert wird) wird aber ebenfalls neu geladen IIRC. Und Schönheit liegt im (zugekniffenen) Auge des Betrachters -> ;)
Ein Iframe der mit seiner Mutterseite neu geladen wird, ein Frame, der mit seiner Mutterframesetseite neu geladen wird, das dürfte alles auf dasselbe hinauslaufen; die kommen alle aus dem Browsercache, wenn du ihre URI nicht mutwillig per Search-String veränderst oder entsprechendes in den META-Tags veranlasst.
Gruß Gernot
hallo Gilbert,
Ich möchte drei Frames nebeneinander erzwingen, jedes 800px breit, sodass man horizontal zur Seite scrollen muss um die anderen Frames zu sehen.
Ups. Mal abgesehen davon, daß Frames nicht eben zu den Lieblingen hier im Forum gehören - bist du sicher, daß das alle Besucher deiner Seite gut finden?
Der Inhalt jedes Frames wird nicht breiter sein und daher ohne horizontalscrollen auskommen. Es geht darum dass im linken Frame (dem ersten das man sieht) der eigentliche Content einer Webseite geschieht, und in den beiden Frames rechts davon Referenzdaten, zu denen man scrollen kann wenn man sie braucht (also ohne ein anderes Fenster öffnen zu müssen).
Na gut, das liest sich so, als ob du dir was dabei gedacht hättest. Aber warum müssen es Frames sein? Gibt es keine andere Möglichkeit, dein Konzept umzusetzen?
Wie kann ich das bitteschön erreichen?
Mit einem Frameset ;-)
Du hast doch jetzt bestimmt keine andere Antwort erwartet. Daher mußt du schon die Gegenfrage erlauben, was du bisher probiert hast, und warum das, was du also probiert hast, nicht zum gewünschten Ergebnis führte.
Grüße aus Berlin
Christoph S.
Hallo Christoph!
Ja es hat einen Sinn dass ich Frames nehme, da das Hauptfenster (das linke) PHP scripts abarbeitet, und die Rechen- und Ladezeiten möchte ich mir und dem Besucher ersparen indem ich die anderen Inhalte/Frames nur bei Bedarf abarbeite/nachlade, und sie trotzdem gleichzeitig in einem Browserfenster anbieten.
Frameset ist schon klar, aber ich bekomme nur ein Fenster mit drei Spalten, egal was ich schreibe, HTML oder CSS, das ist mein Problem.
Danke auch an die anderen Poster! Aber hat jemand eine Lösung für mich?
hallo,
... Rechen- und Ladezeiten möchte ich mir und dem Besucher ersparen
Kannst du das bitte begründen? Welche "Rechen- und Ladezeiten" hast du denn gemessen, so daß es dir unzumutbar erscheint?
Frameset ist schon klar, aber ich bekomme nur ein Fenster mit drei Spalten, egal was ich schreibe, HTML oder CSS, das ist mein Problem.
Framesets haben per se erstmal gar nichts mit CSS zu tun.
Grüße aus Berlin
Christoph S.
... Rechen- und Ladezeiten möchte ich mir und dem Besucher ersparen
Kannst du das bitte begründen? Welche "Rechen- und Ladezeiten" hast du denn gemessen, so daß es dir unzumutbar erscheint?
Gemessen ober berechnet habe ich gar nichts, aber warum soll ich Inhalte generieren wenn dies nicht nötig ist? Ich denke wenn ich von Anfang an die Ressourcen schone, kommt am Ende was eleganteres raus, als wenn ich gleich vom Start weg verschwende. Der Hauptinhalt wird viel zum Klicken sein, und ich möchte vermeiden dass er unnötig gebremst wird (der Hauptinhalt).
Frameset ist schon klar, aber ich bekomme nur ein Fenster mit drei Spalten, egal was ich schreibe, HTML oder CSS, das ist mein Problem.
Framesets haben per se erstmal gar nichts mit CSS zu tun.
Yep, das ist schon richtig, aber evtl. kann ich per CSS in den Framesourceseiten etwas nachhelfen?!
Grüße aus Wien!
hallo Gilbert,
Gemessen ober berechnet habe ich gar nichts
Und wie kommst du dann zu der Vermutung, daß es irgendwelche "Ladezeiten" zu berücksichtigen gäbe, wenn ud kein Frameset nimmst?
aber warum soll ich Inhalte generieren wenn dies nicht nötig ist?
Diese Nachfrage wirkt nur auf den ersten Blick charmant. Das "Generieren" vollzieht sich, wenn man es in Anspruch nimmt, auf Serverseite. Und das geht sehr schnell und nazu ohne Belastung des Servers selbst. Dem ist es wurscht, ob er eine "statische" oder eine "dynamische" Seite an eine Anfrage liefern soll. Nicht _wie_ etwas ausgeliefert wird, erzeugt Serverlast; aber _wie umfangreich_ das ist, was ausgeliefert werden soll, könnte Bedeutung haben.
Allerdings kann auch Javascript über "document.write" etwas tun, was wie "generieren" wirkt. Das vollzieht sich aber im Browser des Seitenbesuchers und hat mit irgendwelcher Serverlast überhaupt nichts zu tun.
Ich denke wenn ich von Anfang an die Ressourcen schone, kommt am Ende was eleganteres raus
Auch das klingt zuerst charmant, dürfte sich aber sehr schnell als Denkfehler entpuppen.
Der Hauptinhalt wird viel zum Klicken sein, und ich möchte vermeiden dass er unnötig gebremst wird (der Hauptinhalt).
Dann mußt du schauen, was da "geklickt" wird, und wo und wie sich das Ergebnis dieser Klicks niederschlagen soll.
evtl. kann ich per CSS in den Framesourceseiten etwas nachhelfen?
CSS hat tatsächlich auf den Seiten, die du in dienen Frameset laden möchtest, eine Residenz - dort hat es vorzukommen. Aber was sollte das nun wieder mit irgendwelchen "Ressourcen" zu tun haben?
Grüße aus Berlin
Christoph S.
Hallo Gilbert,
Frameset ist schon klar, aber ich bekomme nur ein Fenster mit drei Spalten, egal was ich schreibe, HTML oder CSS, das ist mein Problem.
eben nicht Frameset, sondern Iframes!
Danke auch an die anderen Poster! Aber hat jemand eine Lösung für mich?
hab ich dir doch geschrieben:
https://forum.selfhtml.org/?t=129366&m=836306
Gruß Gernot
hallo Gernot,
eben nicht Frameset, sondern Iframes! [...] hab ich dir doch geschrieben
Und ich habe dir geantwortet, daß das keine wirklich gute Idee sei. Die Begründung für beide Behauptungen steht noch aus.
Grüße aus Berlin
Christoph S.
Hallo Christoph,
eben nicht Frameset, sondern Iframes! [...] hab ich dir doch geschrieben
Und ich habe dir geantwortet, daß das keine wirklich gute Idee sei. Die Begründung für beide Behauptungen steht noch aus.
Dass sich Gilberts Vorhaben sehr leicht mit Iframes realisieren ließe, dürfte doch unstrittig sein: In der Breite auf je 800 Pixel definierte IFRAME-Elemente in einen ausreichend großen Container oder eine Tabelle packen, fertig ist die Laube.
Dafür braucht es dann unter Umständen noch nicht einmal CSS.
Aber wie willst du das mit Frames in einem Frameset schaffen?
Gibt der folgende Code in etwa deine Idee wieder, der bei mir nur im IE funktioniert?
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN"
"http://www.w3.org/tr/html4/frameset.dtd">
<html>
<head>
<title>komplettes Frameset scrollen</title>
<style type="text/css">
[code lang=css]
html {
margin:0;
padding:0;
height:100%;
width:100%;
}
frameset {
margin:0;
padding:0;
width:2412px;
}
frame {
width:800px;
}
</style>
</head>
<frameset cols="800,800,800" frameborder="1" framespacing="0" border="1">
<frame name="contents" src="seite1.html">
<frame name="main" src="seite2.html">
<frame name="main2" src="seite3.html">
</frameset>
</html>
[/code]
Allerdings kommt der IE da auch noch mit unerwünschten vertikalen Scrollbalken. Nun gut auch gegen die könnte man dann was tun, analog zu dem Artikel von Elya:
Horizontale Scrollbalken im Internet Explorer 6
Und was hast du für die (anderen) Browser vorgesehen? Wie sieht dein korrekt-gebautes komplett scrollbares Frameset denn aus?
Gruß Gernot