Wie erstelle ich gültiges HTML5 mit Frames?

Lesezeit: 8 Minuten

Für die Schule muss ich eine Website machen muss Rahmen verwenden. Ich beschwerte mich erfolglos bei meinem Lehrer.

Ich möchte HTML5 verwenden, aber Frames scheinen veraltet zu sein. Muss ich XHTML, HTML 4 verwenden oder gibt es eine Problemumgehung, die meine Seiten durch die Verwendung von Frames zu gültigem HTML5 macht?

  • Ein Teil des Lernprozesses in der Schule besteht darin zu lernen, dass (a) Professoren nicht unfehlbar sind (b) dass es manchmal Anforderungen gibt, die dumm, veraltet, archaisch sind und es sind still Bedarf. 🙂 Viel Glück. 🙂

    – Sarnold

    30. Januar 2011 um 22:39 Uhr

  • Dieser Lehrer von Ihnen sollte nicht Webentwicklung unterrichten, wenn dies der Umfang seines Wissens ist.

    – Du

    30. Januar 2011 um 22:46 Uhr

  • Ich musste 2004-2005 eine Frame-basierte Website für die Schule erstellen. Schon damals waren sie lächerlich veraltet. Gut zu wissen, dass es immer noch stark ist!

    – Chris Harrison

    1. August 2012 um 8:18 Uhr

  • Frames werden im E-Learning immer noch häufig verwendet, wobei einige Inhalte über SCORM verbunden werden und den Zustand mithilfe eines Framesets beibehalten. Hoffentlich verschwindet das bald, aber in der Zwischenzeit scheint Ihr Lehrer Ihnen einen potenziellen Job in der Bildungsbranche vermittelt zu haben!

    – Danjah

    30. Oktober 2013 um 0:56 Uhr


  • @Valen, weil das gut unterstützt wird caniuse.com/#feat=iframe-seamless

    – Nat

    25. September 2014 um 14:37 Uhr

Ich weiß, dass Ihr Unterricht vorbei ist, aber lassen Sie sich beim professionellen Programmieren dies eine Lektion sein:

  • “Veraltet” bedeutet “Verwendung vermeiden; es wird in Zukunft entfernt”
  • Veraltete Dinge funktionieren immer noch – erwarten Sie nur keinen Support oder Zukunftssicherheit
  • Wenn die Anforderung dies erfordert und Sie es nicht aushandeln können, verwenden Sie einfach das veraltete Konstrukt.
    • Wenn Sie wirklich besorgt sind, entwickeln Sie die alternative Implementierung nebenbei und halten Sie sie für den unvermeidlichen Ausfall bereit
    • Berechnen Sie jetzt die zusätzliche Arbeit. Indem sie eine veraltete Funktion anfordern, bitten sie Sie, die Arbeit zu verdoppeln. Sie werden es sowieso wieder sehen, also können Sie es genauso gut vorab laden.
    • Wenn der Fehler eintritt, teilen Sie der interessierten Partei mit, dass Sie dies befürchtet haben. dass Sie sich darauf vorbereitet haben, aber es wird einige Zeit dauern
    • Stellen Sie Ihre Lösung so schnell wie möglich bereit (es wird Fehler geben)
    • Gewinnen Sie Repräsentanten, um übermäßige Ausfallzeiten zu vermeiden.

Benutzeravatar von jamesmortensen
jamesmortensen

Nun, es gibt viele Beispiele dafür, wie ich Fragen mit Aufsätzen beantwortet habe, warum das Befolgen von Validierungsregeln wichtig ist. Ich habe auch gesagt, dass man manchmal einfach ein Rebell sein und die Regeln brechen und die Gründe dokumentieren muss.

Das sieht man an diesem Beispiel Framesets funktionieren immer noch in HTML5. Ich musste jedoch den Code herunterladen und oben einen HTML5-Doctype hinzufügen. Aber das Frameset-Element wurde trotzdem erkannt und das gewünschte Ergebnis erzielt.

Wenn Sie also wissen, dass die Verwendung von Framesets völlig absurd ist und Sie wissen, dass Sie dies gemäß den Anweisungen Ihres Professors / Lehrers verwenden müssen, können Sie sich einfach mit dem einzelnen Validierungsfehler im W3C-Validator befassen und sowohl das HTML5-Videoelement als auch das verwenden veraltetes Frameset-Element.

<!DOCTYPE html>
<html>
    <head>
    </head>
    <!-- frameset is deprecated in html5, but it still works. -->
    <frameset framespacing="0" rows="150,*" frameborder="0" noresize>
        <frame name="top" src="http://www.npscripts.com/framer/demo-top.html" target="top">
        <frame name="main" src="http://www.google.com" target="main">
    </frameset>
</html>

Denken Sie daran, dass es sich bei einem Projekt für die Schule höchstwahrscheinlich nicht um etwas handelt, das in ein oder zwei Jahren verfügbar sein wird, sobald die Browseranbieter die Frameset-Unterstützung für HTML5 vollständig entfernt haben. Wisse nur, dass du Recht hast und tue einfach, was dein Lehrer/Professor verlangt, nur um die Note zu bekommen 🙂

AKTUALISIEREN:

Das übergeordnete Dokument der obersten Ebene verwendet XHTML und der Frame verwendet HTML5. Der Validator hat sich nicht darüber beschwert, dass das Frameset illegal ist, und er hat sich nicht über das Videoelement beschwert.

index.php:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
<html>
    <head>
    </head>
    <frameset framespacing="0" rows="150,*" frameborder="0" noresize>
        <frame name="top" src="http://www.npscripts.com/framer/demo-top.html" target="top">
        <frame name="main" src="video.html" target="main">
    </frameset>
</html>

video.html:

<!doctype html>
<html>
    <head>
    </head>
    <body>
        <div id="player-container">
            <div class="arrow"></div>
            <div class="player">

                <video id="vid1" width="480" height="267" 
                    poster="http://cdn.kaltura.org/apis/html5lib/kplayer-examples/media/bbb480.jpg"
                    durationHint="33" controls>
                    <source src="http://cdn.kaltura.org/apis/html5lib/kplayer-examples/media/bbb_trailer_iphone.m4v" />

                    <source src="http://cdn.kaltura.org/apis/html5lib/kplayer-examples/media/bbb400p.ogv" />

                </video>

        </div>
    </body>
</html>

  • Ist es möglich, das Videoelement und seine Attribute in einem zweiten DOCTYPE zu definieren und XHTML mit dem Video-Tag zu verwenden?

    Benutzer142019

    30. Januar 2011 um 22:56 Uhr

  • @Radek – Ich habe meine Antwort aktualisiert, um zu zeigen, dass das übergeordnete Dokument einen anderen Dokumenttyp als die untergeordneten Frames verwenden kann. Tolle Frage! Sie sollten einfach in den sauren Apfel beißen und tun, was Ihr Professor/Lehrer von Ihnen verlangt, und wissen, dass Sie für Ihre zukünftigen Arbeitgeber eine große Bereicherung sein werden! Gut gemacht!

    – jamesmortensen

    30. Januar 2011 um 23:13 Uhr

  • @ jmort253 dumm von mir. Na sicher! Ich kann nur XHTML für die übergeordnete Seite und HTML5 für die Frames verwenden. 🙂

    Benutzer142019

    30. Januar 2011 um 23:15 Uhr

  • @RadekS Sie können jeden gewünschten Dokumenttyp verwenden – der entscheidende Faktor ist, ob der Browser dies unterstützt video nicht der Dokumententyp. Keiner von Firefox, Chrome oder Opera kümmert sich darum, sie spielen die Videos was auch immer.

    – Robertc

    31. Januar 2011 um 2:39 Uhr

  • @robertc Ich weiß, aber ich möchte, dass es validiert wird. 🙂

    Benutzer142019

    3. Februar 2011 um 18:54 Uhr

Vielleicht könnte eine AJAX-Seiteninhaltsinjektion als Alternative verwendet werden, obwohl ich immer noch nicht verstehe, warum Ihr Lehrer sich weigern würde, die Website von Frames zu befreien.

Gibt es außerdem einen bestimmten Grund, warum Sie persönlich HTML5 verwenden möchten?

Aber wenn nicht, glaube ich <iframe>s sind immer noch da.

  • Ich möchte HTML5 speziell für das Video-Tag verwenden. Mein Lehrer ist auch nicht sehr erfahren in der Webentwicklung; er wusste nicht einmal etwas über CSS, bis ich es ihm zeigte. Ist es vielleicht nicht möglich, einen benutzerdefinierten DOCTYPE zu verwenden?

    Benutzer142019

    30. Januar 2011 um 22:40 Uhr

  • Angesichts der aktuellen und sehr schlanken Unterstützung von HTML5 (diveintohtml5.org/video.html) unter den heutigen Browsern würde ich vorerst zögern, eine solche Funktion zu verwenden. Und wenn Sie nicht genau feststellen können, welche Browser und Browserversionen Ihre Benutzer verwenden, werden Sie stecken bleiben, ohne auch eine Art Fallback zu erstellen.

    – Jerluc

    30. Januar 2011 um 22:45 Uhr


Ihr Benutzer-Avatar
Du

Dazu müssen Sie auf XHTML oder HTML 4.01 zurückgreifen. Obwohl iframe in HTML5 immer noch vorhanden ist, wird seine Verwendung zum Einbetten von Inhalten, die für den Benutzer bestimmt sind, nicht empfohlen.

Und sagen Sie Ihrem Lehrer auf jeden Fall, dass Rahmen seit Ende der Neunzigerjahre nicht mehr State-of-the-Art sind. Sie haben überhaupt keinen Platz in irgendeiner Art von Bildung, außer möglicherweise aus historischen Gründen.

Keiths Benutzeravatar
Keith

Frames wurden in HTML5 nicht verworfen, waren aber in XHTML 1.1 Strict und 2.0 veraltet, blieben aber in XHTML Transitional und wurden in HTML5 zurückgegeben. Ebenfalls hier ist ein interessanter Artikel über die Verwendung von CSS, um Frames ohne Frames nachzuahmen. Ich habe es gerade in IE 8, FF 3, Opera 11, Safari 5, Chrome 8 getestet. Ich liebe Frames, aber sie haben ihre Probleme, insbesondere mit Suchmaschinen, Lesezeichen und Drucken, und mit CSS können Sie Druck- oder nur Anzeigeinhalte erstellen . Ich hoffe, Alex’ XHTML/CSS-Frame ohne Frames-Lösung auf HTML5/CSS3 aktualisieren zu können.

  • Frames werden als „völlig obsolet“ und unter jenen (nicht konformen) Merkmalen von HTML, die „von Autoren nicht verwendet werden dürfen“ aufgeführt w3.org/TR/html5/obsolete.html#non-conforming-features auch wenn Verarbeitungsvoraussetzungen unter aufgeführt sind w3.org/TR/html5/obsolete.html#frames

    – Brett Zamir

    2. März 2014 um 23:28 Uhr

  • @BrettZamir Es ist einer der größten Fehler, die jemals von Community-Standards gemacht wurden, Frames als veraltet zu betrachten. Sie bieten Funktionen, die in iFrame noch nicht verfügbar sind, die für heutige Web-Apps sehr vorteilhaft wären, wenn sie richtig genutzt würden.

    – Dieser Realty Programmer Guy

    10. November 2021 um 22:33 Uhr

  • Ich stimme zu, aber es ist erwähnenswert, falls Browser so handeln, dass sie ihre Unterstützung vollständig entfernen.

    – Brett Zamir

    11. November 2021 um 2:05 Uhr

  • Frames werden als „völlig obsolet“ und unter jenen (nicht konformen) Merkmalen von HTML, die „von Autoren nicht verwendet werden dürfen“ aufgeführt w3.org/TR/html5/obsolete.html#non-conforming-features auch wenn Verarbeitungsvoraussetzungen unter aufgeführt sind w3.org/TR/html5/obsolete.html#frames

    – Brett Zamir

    2. März 2014 um 23:28 Uhr

  • @BrettZamir Es ist einer der größten Fehler, die jemals von Community-Standards gemacht wurden, Frames als veraltet zu betrachten. Sie bieten Funktionen, die in iFrame noch nicht verfügbar sind, die für heutige Web-Apps sehr vorteilhaft wären, wenn sie richtig genutzt würden.

    – Dieser Realty Programmer Guy

    10. November 2021 um 22:33 Uhr

  • Ich stimme zu, aber es ist erwähnenswert, falls Browser so handeln, dass sie ihre Unterstützung vollständig entfernen.

    – Brett Zamir

    11. November 2021 um 2:05 Uhr

1436590cookie-checkWie erstelle ich gültiges HTML5 mit Frames?

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy