NUIKE451: HTML Frameset in CSS Umwandeln ?

Hallo
Ich habe ein Problem und zwar will ich meine Seite soweit mit http://www.w3.org/ Zertifizieren oder wie man es am bessten übersetzt ^^°
dazu müsste das HTML frameset aus meiner index xhtml Datei verschwinden.

Ich will aber jetzt kein PHP oder ähnliches verwenden soll schon noch HTML bleiben ^^

Jetzt ist meine frage kann ich mit CSS mein Frameset so ersetzen das es genauso funktioniert?
Also das es zum einen Dynamisch ist und man nicht auch jeder seite den Kopf, die Navi und den Fußteil neu einfügen muss ?
das also in der index.html wie jetzt ein Mainframe hat wo man andere unterseiten drin öffnen kann ?

hier mal meine seite
http://free-for-all.ath.cx/

mein erster versuch es kommplet mit CSS zu lösen war eher ein reinfall :´-(
kenne mich aber was das angeht auch mit CSS nicht so gut aus ^^°

hoffe man kann mir bei dem nervigen Problem helfen :-D

  1. Hi,

    Ich habe ein Problem und zwar will ich meine Seite soweit mit http://www.w3.org/ Zertifizieren oder wie man es am bessten übersetzt ^^°

    du meinst "validieren"?

    dazu müsste das HTML frameset aus meiner index xhtml Datei verschwinden.

    Nicht unbedingt - auch ein Frameset ist valide, wenn man den dazu passenden DOCTYPE angibt. Dennoch ist es eine gute Idee, das Frameset zu eliminieren.

    Ich will aber jetzt kein PHP oder ähnliches verwenden soll schon noch HTML bleiben ^^

    Hmm? Was hat das eine mit dem anderen zu tun?

    Jetzt ist meine frage kann ich mit CSS mein Frameset so ersetzen das es genauso funktioniert?
    Also das es zum einen Dynamisch ist und man nicht auch jeder seite den Kopf, die Navi und den Fußteil neu einfügen muss ?

    Da bietet sich an, diese gleichbleibenden Teile als Quelltextbausteine zu speichern und z.B. mit SSI (Server Side Includes) in jedes Dokument einzubinden. Oder aber doch PHP verwenden und die Bausteine dann mit readfile() einfügen.

    das also in der index.html wie jetzt ein Mainframe hat wo man andere unterseiten drin öffnen kann ?

    Nein, nein, nein! Löse dich von dem Gedanken, das Dokument zu zerstückeln! Jedes HTML-Dokument sollte in sich vollständig sein. Es geht also nicht darum, "nur den Content-Bereich neu zu laden", wie es oft gefragt wird. Sondern es geht darum, eine neue vollständige Seite zu laden, die aufgrund des gleichen Grundaufbaus *so aussieht*, als sei nur ein Bereich geändert worden.

    mein erster versuch es kommplet mit CSS zu lösen war eher ein reinfall :´-(

    Das ist normal. Alle haben mal klein angefangen.

    kenne mich aber was das angeht auch mit CSS nicht so gut aus ^^°

    Dann hole dir hier ein paar Inspirationen. Das ersetzt aber nicht, sich intensiver mit CSS zu beschäftigen und sich zumindest die Grundlagen anzueignen. Die Feinheiten kommen dann mit der Zeit.

    So long,
     Martin

    --
    In Ägypten haben früher 150000 Leute 35 Jahre lang an einer Pyramide gearbeitet. Aber bei uns arbeiten doppelt so viele Leute doppelt so lange allein an der Baugenehmigung.
      (Dieter Nuhr, deutscher Kabarettist)
    1. du meinst "validieren"?

      joa genau ^^

      Nicht unbedingt - auch ein Frameset ist valide, wenn man den dazu passenden DOCTYPE angibt. Dennoch ist es eine gute Idee, das Frameset zu eliminieren.

      hmm und wie ich habe den Quelltext in meiner index.html

      <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">

      <html xmlns="http://www.w3.org/1999/xhtml">
      <head>
      <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
      <title>FREE-FOR-ALL</title>
      </style>
      </style>
      </head>
      <frameset rows="91,*" frameborder="no" border="0">
        <frame frameborder="no" border="0" src="up1.html" name="topFrame" scrolling="no" noresize="noresize" id="topFrame" title="topFrame" />
        <frameset rows="20,*" cols="*" framespacing="0" frameborder="no" border="0">
          <frame src="up2.html" name="topFrame1" scrolling="no" noresize="noresize" id="topFrame1" title="topFrame1" />
          <frameset rows="*,40" cols="*" framespacing="0" frameborder="no" border="0">
            <frameset rows="*" cols="143,*" framespacing="0" frameborder="no" border="0">
              <frame src="left.html" name="leftFrame" scrolling="no" noresize="noresize" id="leftFrame" title="leftFrame" />
              <frame src="main.html" name="mainFrame" id="mainFrame" title="mainFrame" />
            </frameset>
            <frameset rows="*,20" cols="*" framespacing="0" frameborder="no" border="0">
              <frame src="down1.html" name="bottomFrame" scrolling="no" noresize="noresize" id="bottomFrame" title="bottomFrame" />
              <frameset rows="*" cols="143,*" framespacing="0" frameborder="no" border="0">
                <frame src="left-down.html" name="leftFrame1" scrolling="no" noresize="noresize" id="leftFrame1" title="leftFrame1" />
                <frame src="down2.html" name="bottomFrame1" scrolling="no" noresize="noresize" id="bottomFrame1" title="bottomFrame1" />
              </frameset>
            </frameset>
          </frameset>
        </frameset>
      </frameset>
      <noframes><body>
      </body></noframes>
      </html>

      wurde erstellt mit Dreamweaver CS4

      Hmm? Was hat das eine mit dem anderen zu tun?

      Naja hatte in der Vergangenheit mehr Probleme mit php als mit HTML ^^°

      Da bietet sich an, diese gleichbleibenden Teile als Quelltextbausteine zu speichern und z.B. mit SSI (Server Side Includes) in jedes Dokument einzubinden. Oder aber doch PHP verwenden und die Bausteine dann mit readfile() einfügen.

      hmm also mit diesen z.B. include Befehlen ?

      Nein, nein, nein! Löse dich von dem Gedanken, das Dokument zu zerstückeln! Jedes HTML-Dokument sollte in sich vollständig sein. Es geht also nicht darum, "nur den Content-Bereich neu zu laden", wie es oft gefragt wird. Sondern es geht darum, eine neue vollständige Seite zu laden, die aufgrund des gleichen Grundaufbaus *so aussieht*, als sei nur ein Bereich geändert worden.

      hmm naja dann benötige ich aber erstmal nen funktionierendes dynamisches CSS basierende Seitenstruktur ^^

      Dann hole dir hier ein paar Inspirationen. Das ersetzt aber nicht, sich intensiver mit CSS zu beschäftigen und sich zumindest die Grundlagen anzueignen. Die Feinheiten kommen dann mit der Zeit.

      So long,
      Martin

      hatte ich schon ^^ darauf basierten ja die ersten versuche ^^°

      1. »» Oder aber doch PHP verwenden und die Bausteine dann mit readfile() einfügen.

        hmm also mit diesen z.B. include Befehlen ?

        include() oder require() führt den PHP-Code aus, readfile() liest nur den Quelltext und bindet ihn ein. file_get_contents() wäre auch eine Möglichkeit)

        hmm naja dann benötige ich aber erstmal nen funktionierendes dynamisches CSS basierende Seitenstruktur ^^

        In erster Linie benötigst du HTML um deinen Inhalt auszuzeichnen - CSS kommt später.

  2. dazu müsste das HTML frameset aus meiner index xhtml Datei verschwinden.

    Wenngleich ein Frameloser aufbau vorteile bietet, hat gültiger (valider) Code nichts mit Frames bzw. keine Frames zu tun.

    Ich will aber jetzt kein PHP oder ähnliches verwenden soll schon noch HTML bleiben ^^

    Das Endresultat wird immer HTML sein - auch wenn du PHP oder eine andere serverseitige Sprache verwendest - es erleichtert dir nur die Arbeit.

    Jetzt ist meine frage kann ich mit CSS mein Frameset so ersetzen das es genauso funktioniert?

    Du verwendest ein hundsgewöhnliches 2-spaltiges Layout (wie z.B. die Wikipedia) mit einem feststehenden Footer. SELFHTML hat einen Artikel hierzu: Footer aller Art - feststehende Elemente realisieren

    Also das es zum einen Dynamisch ist und man nicht auch jeder seite den Kopf, die Navi und den Fußteil neu einfügen muss ?

    Ja, aus diesem Grund wäre eine serverseitige Scriptsprache wie PHP (oder Server Side Includes) sehr ratsam.

    das also in der index.html wie jetzt ein Mainframe hat wo man andere unterseiten drin öffnen kann ?

    Nein, du hast nur noch "ein Dokument" (bzw. für jede Unterseite eines) - alles wird vollständig geladen. Das macht aber nichts ;)

    mein erster versuch es kommplet mit CSS zu lösen war eher ein reinfall :´-(

    Schade, dass du uns diesen vorenthältst.

    kenne mich aber was das angeht auch mit CSS nicht so gut aus ^^°

    Na dann erneut mit obigem Beispiel "Frisch, fromm, fröhlich, frei ans Werk".

    hoffe man kann mir bei dem nervigen Problem helfen :-D

    Wenns Probleme gibt: Link zu deiner Baustelle und eine aussagekräftige Problembeschreibung (natürlich in diesem Thread, wir wollen ja keine Doppelpostings).

    1. Wenngleich ein Frameloser aufbau vorteile bietet, hat gültiger (valider) Code nichts mit Frames bzw. keine Frames zu tun.

      naja nur bekomme ich das Frameset nicht valider ^^°

      Das Endresultat wird immer HTML sein - auch wenn du PHP oder eine andere serverseitige Sprache verwendest - es erleichtert dir nur die Arbeit.

      ja ich weis schon, das dass Endresultat immer HTML ist ;-) nur hatte ich mit PHP zuviele sicherheitsprobleme darum mag ich PHP nicht so sehr ;-)

      Du verwendest ein hundsgewöhnliches 2-spaltiges Layout (wie z.B. die Wikipedia) mit einem feststehenden Footer. SELFHTML hat einen Artikel hierzu: Footer aller Art - feststehende Elemente realisieren

      also meine Seite ist wie Folgt aufgebaut
      -Frame für den Bannerbereich
      -Frame mit dem orangen Balken
      -Frame links für die Navi
      -Frame rechts für den Mainframe
      -Frame für den unteren orangen Balken
      -Frame unten links für den counter
      -Frame rechts für den Copyrighthinweis

      Ich weis etwas viele Frames ^^°
      wie es aber aussieht sieht man unter dem Link
      http://free-for-all.ath.cx/

      Ja, aus diesem Grund wäre eine serverseitige Scriptsprache wie PHP (oder Server Side Includes) sehr ratsam.

      hmm mit Server Side Includes hab ich so noch nicht wirklich gearbeitet ^^°

      Nein, du hast nur noch "ein Dokument" (bzw. für jede Unterseite eines) - alles wird vollständig geladen. Das macht aber nichts ;)

      Schade, dass du uns diesen vorenthältst.

      hab es nichtmehr auf dem Server ^^

      1. naja nur bekomme ich das Frameset nicht valider ^^°

        Wie meinst du das?

        ja ich weis schon, das dass Endresultat immer HTML ist ;-) nur hatte ich mit PHP zuviele sicherheitsprobleme darum mag ich PHP nicht so sehr ;-)

        Bei readfile() gibts praktisch keine Sicherheitsprobleme.

        »» Du verwendest ein hundsgewöhnliches 2-spaltiges Layout (wie z.B. die Wikipedia) mit einem feststehenden Footer. SELFHTML hat einen Artikel hierzu: Footer aller Art - feststehende Elemente realisieren
        wie es aber aussieht sieht man unter dem Link
        http://free-for-all.ath.cx/

        Welche Fragen lässt der von mir gepostete Link dann noch offen?

        1. Wie meinst du das?

          http://validator.w3.org/check?uri=http%3A%2F%2Ffree-for-all.ath.cx%2F&charset=%28detect+automatically%29&doctype=Inline&ss=1&group=0&No200=1&user-agent=W3C_Validator%2F1.654

          1. http://validator.w3.org/check?uri=http%3A%2F%2Ffree-for-all.ath.cx%2F&charset=%28detect+automatically%29&doctype=Inline&ss=1&group=0&No200=1&user-agent=W3C_Validator%2F1.654

            Worin besteht das Problem die genannten Mängel[1]  zu korrigieren?

            [1] Drei an der Zahl, scheint mir nicht so aufwändig zu sein - oder?

            1. Worin besteht das Problem die genannten Mängel[1]  zu korrigieren?

              [1] Drei an der Zahl, scheint mir nicht so aufwändig zu sein - oder?

              naja entferne ich diese kommen wieder Ramen im Browser :-/

              1. naja entferne ich diese kommen wieder Ramen im Browser :-/

                Man kann die <http://de.selfhtml.org/html/frames/eigenschaften.htm#rahmen@title=Rahmen auch entfernen> und trotzdem gültigen Code haben.

                1. »» naja entferne ich diese kommen wieder Ramen im Browser :-/

                  Man kann die <http://de.selfhtml.org/html/frames/eigenschaften.htm#rahmen@title=Rahmen auch entfernen> und trotzdem gültigen Code haben.

                  hmm klapt irgendwie nicht hab im IE, Mozilla und Chrome immernoch Ramen zwar keine 3D Ramen mehr aber Ramen :-/

                  hier mal der Quelltext von der index

                  <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">  
                  <html xmlns="http://www.w3.org/1999/xhtml">  
                  <head>  
                  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />  
                  <title>FREE-FOR-ALL</title>  
                  </head>  
                  <frameset rows="91,*" frameborder="no" border="0">  
                    <frame src="up1.html" name="topFrame" scrolling="no" noresize="noresize" id="topFrame" title="topFrame" />  
                    <frameset rows="20,*" cols="*" frameborder="no" framespacing="0">  
                      <frame src="up2.html" name="topFrame1" scrolling="no" noresize="noresize" id="topFrame1" title="topFrame1" />  
                      <frameset rows="*,40" cols="*" framespacing="0" frameborder="no" >  
                        <frameset rows="*" cols="143,*" framespacing="0" frameborder="no" >  
                          <frame src="left.html" name="leftFrame" scrolling="no" noresize="noresize" id="leftFrame" title="leftFrame" />  
                          <frame src="main.html" name="mainFrame" id="mainFrame" title="mainFrame" />  
                        </frameset>  
                        <frameset rows="*,20" cols="*" framespacing="0" frameborder="no">  
                          <frame src="down1.html" name="bottomFrame" scrolling="no" noresize="noresize" id="bottomFrame" title="bottomFrame" />  
                          <frameset rows="*" cols="143,*" framespacing="0" frameborder="no">  
                            <frame src="left-down.html" name="leftFrame1" scrolling="no" noresize="noresize" id="leftFrame1" title="leftFrame1" />  
                            <frame src="down2.html" name="bottomFrame1" scrolling="no" noresize="noresize" id="bottomFrame1" title="bottomFrame1" />  
                          </frameset>  
                        </frameset>  
                      </frameset>  
                    </frameset>  
                  <noframes>  
                  <body>  
                  </body>  
                  </noframes>  
                  </frameset>  
                  </html>
                  

                  vielleicht kannst du mir ja sagen was weg muss der Quelltext ist jetzt noch der alte^^°

                  1. vielleicht kannst du mir ja sagen was weg muss der Quelltext ist jetzt noch der alte^^°

                    Vielleicht kannst du einfach so nett sein und die von mir verlinkte Doku lesen :) Ich sehe dort jedenfalls nichts von frameborder="no"