uvok: Einbindung Navigationsseite mit object - Gestaltungsprobleme

Hallo,

ich überarbeite grade meine Homepage (layoutmäßig) und will u.a. die Frames abschaffen.

Dabei bin ich über dieses Beispiel gestoßen:
http://de.selfhtml.org/css/layouts/mehrspaltige.htm#zweispaltig_links

Vom Prinzip her würde ich die Navigation so einbinden. Damit ich aber die Navigation nicht auf x Seiten überarbeiten muss, wenn mal eine Seite dazukommt, wollte ich die Navigationsseite per object einbinden.

Dabei habe ich jetzt 2 kleine Probleme:

1. Wenn ich die html-Seite als <object> einbinde, erscheint rechts ein Scrollbalken, ich müsste die Höhe des Objektes (oder des div-Bereiches?) also festlegen. Oder gibt es dazu einer Alternative?

2. Die Navigation enthält - welch eine Überraschung - Links. Wenn ich nun auf einen Link klicke, öffnet sich die "neue" Seite in dem <div> Bereich, nicht über die ganze Seite. target will ich aber nicht verwenden (nicht XHTML-strict konform). Gibt es dazu eine Alternative?

Hier der Quelltext:

<div id="Navigation">  
<object data="nav.html" type="text/html">Navigationsbereich</object>  
</div>  
<div id="Inhalt"><!-- Der Seiteninhalt --></div>

Das CSS habe ich größtenteils aus dem Beispiel übernommen...
Auf das wichtigste gekürzt:

#Navigation {float: left;}  
div#Inhalt {  
  margin-left: 22em;  
  padding: 0 1em;  
  border: 1px dashed silver;  
  min-width: 16em;  
}
  1. @@uvok:

    nuqneH

    Damit ich aber die Navigation nicht auf x Seiten überarbeiten muss, wenn mal eine Seite dazukommt, wollte ich die Navigationsseite per object einbinden.

    Das ist nicht besser als per iframe, schafft aber Probleme in alten IEs.

    Warum bindest du die Navigation nicht serverseitig ein? Dann kannst du auch dafür sorgen, dass die aktuelle Seite im Menü nicht verlinkt ist (Punkt 10 der zehn meist-missachteten Homepage-Design-Richtlinien [Nielsen]).

    Qapla'

    --
    Gut sein ist edel. Andere lehren, gut zu sein, ist noch edler. Und einfacher.
    (Mark Twain)
    1. Hallo,

      (Punkt 10 der zehn meist-missachteten Homepage-Design-Richtlinien [Nielsen]).

      Welche Ironie die Tipps auf einer solchen Website zu setzen, die selbst nicht benutzerfreundlich ist. Die Website selbst hat viel schlimmere Probleme:

      • Tabellenlayout
      • Menüs funktionieren nur mit JS
      • feste Breite der Seite
      • nicht valide
      • Verwendung von blockquote zum Einrücken
      • ...

      Das Menü funktioniert außerdem nicht richtig in Opera. Ob das an den Fehlern im Quelltext liegt?

      Sehr amüsant das ganze ;-)

      Viele Grüße Novi

      --
      "(...) deshalb mag ich Binärtechnik. Da gibt es nur drei Zustände: High, Low und Kaputt." (Wau Holland)
      1. @@Novi:

        nuqneH

        Welche Ironie die Tipps auf einer solchen Website zu setzen, die selbst nicht benutzerfreundlich ist. Die Website selbst hat viel schlimmere Probleme:

        http://forum.de.selfhtml.org/archiv/2009/7/t189061/#m1259442 ff.

        Qapla'

        --
        Gut sein ist edel. Andere lehren, gut zu sein, ist noch edler. Und einfacher.
        (Mark Twain)
        1. Hallo,

          die Ironie bleibt trotzdem bestehen.^^ Auch wenn der Verfasser des Textes dafür nichts kann.

          @@Novi:

          nuqneH

          Welche Ironie die Tipps auf einer solchen Website zu setzen, die selbst nicht benutzerfreundlich ist. Die Website selbst hat viel schlimmere Probleme:

          http://forum.de.selfhtml.org/archiv/2009/7/t189061/#m1259442 ff.

          Qapla'

          Viele Grüße Novi

          --
          "(...) deshalb mag ich Binärtechnik. Da gibt es nur drei Zustände: High, Low und Kaputt." (Wau Holland)
    2. Warum bindest du die Navigation nicht serverseitig ein? Dann kannst du auch dafür sorgen, dass die aktuelle Seite im Menü nicht verlinkt ist (Punkt 10 der zehn meist-missachteten Homepage-Design-Richtlinien [Nielsen]).

      hm, das klingt schon interessant.
      Allerdings habe ich nur einen Webspace bei 1und1, den ich gratis zu meinem DSL-Anschluss dazubekommen habe.

      Habe einen schnellen Test durchgeführt und

      <!--#include file="navi.htm" -->

      In eine Datei hinzugefügt und mit Navigationsseite hochgeladen. Ergebnis:
      statt der Navi-Seite steht da

      [an error occurred while processing this directive]

      Habe es auch mit der .inc-Endung versucht, gleiches Ergebnis.
      Das Beispiel von der Selfhtml-Seite (Anzeige Uhrzeit usw) hat allerdings funktioniert...
      kann es sein, dass das include nicht von den gratis-Webspaces von 1und1 unterstützt wird?

      1. Om nah hoo pez nyeetz, uvok!

        Habe einen schnellen Test durchgeführt und

        <!--#include file="navi.htm" -->

        In eine Datei hinzugefügt und mit Navigationsseite hochgeladen. Ergebnis: statt der Navi-Seite steht da

        [an error occurred while processing this directive]

        Habe es auch mit der .inc-Endung versucht, gleiches Ergebnis. Das Beispiel von der Selfhtml-Seite (Anzeige Uhrzeit usw) hat allerdings funktioniert... kann es sein, dass das include nicht von den gratis-Webspaces von 1und1 unterstützt wird?

        versuch es mit <!--#include virtual="navi.htm" -->, es dürfen keine vollständigen html-dateien sein, sondern nur die Teile, die tatsächlich an dieser Stelle erscheinen würden.

        Matthias

        --
        http://www.billiger-im-urlaub.de/kreis_sw.gif
        1. versuch es mit <!--#include virtual="navi.htm" -->, es dürfen keine vollständigen html-databereien sein, sondern nur die Teile, die tatsächlich an dieser Stelle erscheinen würden.

          Matthias

          Hm, kann die Fehlermeldung wegen der Includierten Datei erscheinen?

          Die navi.htm war eigentlich gar keine vollständige HTML-Datei.
          Nachdem ich aber die navi.htm etwas bearbeitet have (script-Bereiche rausgelöscht, Leeres div gelöscht) ging es plötzlich o.O

          Jetzt geht es sowohl mit file als auch mit virtual.

          Ist eventuell das Script ein Problem gewesen? (CDATA ?)

    3. @@uvok:

      »»Dann kannst du auch dafür sorgen, dass die aktuelle Seite im Menü nicht verlinkt ist

      Nach ein bisschen googelei habe ich dazu Informationen gefunden. Leider funktioniert es nicht ganz so, wie ich möchte...

        
      <!--#if expr="${DOCUMENT_NAME} != 'home.html'" -->  
      <li><a href="home.html">Home</a></li>  
      <!--#elif expr="${DOCUMENT_NAME} = 'home.html'" -->  
      [Home]  
      <!--#endif -->
      

      Leider wird beides ausgegeben... Muss ich noch irgendwas mit Backslash escapen oder was mache ich bei dem Ausdruck falsch...

      1. Leider wird beides ausgegeben... Muss ich noch irgendwas mit Backslash escapen oder was mache ich bei dem Ausdruck falsch...

        Problem gelöst.
        Ich habe die Befehle in die navi.ssi gespeichert, und der Webserver wollte keine SSI-Befehle in SSI-Dateien ausführen *rollseyes*
        Eintrag in .htaccess hat geholfen:

        AddHandler server-parsed .ssi