| 

.NET C# Java Javascript Exception

8
Bekanntlich kann mit mit Frames eine andere Url in die aktuelle Seite einblenden. Darüber kann man Menüs usw. realisieren, was ich auch auf meiner Seite tue. Warum soll man keine Frames, Framesets oder IFrames im HTML benutzen?
News:
09.08.2009
nilz 592 1 2 8
5 Antworten
17
Frames boten in der Vergangenheit zwei enorme Vorteile. Zum Ersten wurde damit die Möglichkeit geschaffen Teile einer Seite unabhängig voneinander zu scrollen und zum Zweiten war es damit möglich das immerwiederkehrende Laden immer gleicher Inhalte (z.B. Menüs) zu vermeiden und damit Traffic zu reduzieren und Ladezeiten zu verkürzen.
Beide Vorteile erkaufte man sich aber mit genügend Nachteilen. Der entscheidenste dabei ist das der Inhalt der Seite völlig auseindandergerissen und in einzelne, unabhängige Blöcke zerlegt wird. Der Aufwand den man als Betreiber aufwenden muß um diese Blöcke miteinander zu synchronisieren ist immens. Auch Sumas haben ihre Schwierigkeiten damit. Wer sich wundert das seine Seite hauptsächlich unter dem Stichwort "Diese Seite benutzt Frames" gefunden wird, der wird wissen was ich meine. Auch das - im WWW sehr geschätzte - Verlinken einzelner Teile oder von Unterseiten eines Frameset ist nur bedingt möglich.
In Zeiten von DSL, Ajax, CSS2/3 sind die o.g. Vorteile nahezu gegenstandslos und was übrigbleibt sind die Nachteile. Aus diesem Grund bleibt eigentlich nur eine Konsequenz: Der Verzicht auf das "gute alte" Frameset.
Lediglich der IFRAME, also der eingebette FRAME hat sich seine Daseinsberechtigung als Container für tatsächlich eigenständige Inhalte und Elemente - sei es nun Werbung oder ein nettes Tool / Gadget eines Drittanbieters - erhalten.
10.08.2009
FalkP 3,3k 3 8
7
Zusätzlich zu FalkPs Antwort:

-Frames wurden leider häufig mit festen Größten definiert, dass heißt man hatte Probleme bei unserschiedlichen Auflösungen

-Ganz wichtiger Punkt: Barrierefreiheit/armut ist mit Frames unmöglich

Noch dazu, sag ich jetzt einfach mal, dass sie bescheuert ausgesehen haben und auch immer bescheuert aussehen werden ;)
18.08.2009
derTim 281 1 3
1
richtig! Barrierefreiheit ist hier auch ein sehr großes Thema. Selbst wenn man nicht darauf achtet, und auch nicht versucht alle Aspekte zu berücksichten, sollte man aufgrund der Lesbarkeit auf Frames verzichten.
jpg 07.09.2009
1
Das bescheuerte Aussehen hatte mit den Rändern zu tun. Die man auf 0 definieren kann. Das müsste also kein Grund sein. Aber Barrierefreiheit und FalkPs Gründe treffen zu.
Mnementh 08.09.2009
3
Des Weiteren ist ein wichtiger Aspekt das Nachbauen / die Sicherheit!

So wurden viel Framewebsites für Phishingangriffe genutzt!
Da man ja die original Frames (original News, Änderungen etc.) einfach mit einbinden kann und nur die Login-Oberfläche nachbauen mußte!

Dies war eine Zeit lang sehr beliebt wo doch sogar Bankwebsites die Frames nutzten!
Und zudem entstand den "Phishern" ja ein minimaler Aufwand! ;)
07.09.2009
cyby 152 1 6
1
Das ist nicht ganz korrekt: Problematisch war das sog. Frame Spoofing: Eine Ressource von Domain A konnte im Frameset eine Ressource von Domain B,n modifizieren.
ChristophJeschke 08.09.2009
3
Wie cyby schon anklingen ließ: Der URI in der Adresszeile des Browsers sollte immer die Ressource abbilden, die man auch tatsächlich betrachtet. Das ist mit Frames i.d.R. nicht der Fall. Auf der einen Seite beschränken Frames möglicherweise die Sicherheit, auf der anderen Seite können sie die Benutzbarkeit beschränken. Bsp: das Aktualisieren einer Seite führt nicht immer zum erwarteten Ziel, das Setzen von Lesezeichen ist problematisch.

Das sollte man natürlich auch beim Einsatz von Ajax im Auge behalten.
08.09.2009
Herri 61 1 1
2
Aber bei B2B-Anwendungen spricht im Sinne der Bedienungsfreundlichkeit nichts gegen Frames, erst recht nicht, wenn sie für einen speziellen Nutzerkreis gedacht sind. Selbst große und populäre Sites verwenden noch Frames, so wie Conrad. Und conrad.de ist ja nicht gerade eine zerrissene Site und gefunden wird die Site auch. Ok, mit externen Tricks.
08.09.2009

Stelle deine Javascript-Frage jetzt!