Mike: problem mit dem Aufrufen von Bilder aus verschiedenen Verzeichnissen

Ich habe meine css Datei, im Verzeichnis

css/style.css

liegen.

Meine Seiten liegen im Hauptverzeichnis und in Unterverzeichnissen

index.html seite2h.html unterverzeichnis/Seite1.html unterverzeichnis/Seite2.html unterverzeichnis/unterverzeichnis/Seite1.html unterverzeichnis/unterverzeichnis/Seite2.html

in meiner css Datei steht es z.B. so:

background:url("../images/bild.png") no-repeat 0px 20px;

das funktioniert aber nur mit den Seiten im Hauptverzeichnis. Wie kann ich es machen, das es in allen Verzeichnissen funktioniert, ohne das ich die komplette URL zmu jeweiligen Bild reinschreibe.

Danke

Mike

  1. Hallo

    background:url("../images/bild.png") no-repeat 0px 20px;

    versuch mal absolute Pfadangaben:

    background:url("/images/bild.png") no-repeat 0px 20px;
    

    Gruß Jürgen

  2. @@Mike

    in meiner css Datei steht es z.B. so:

    background:url("../images/bild.png") no-repeat 0px 20px;

    das funktioniert aber nur mit den Seiten im Hauptverzeichnis.

    Nein. Der relative Pfad zum Bild bezieht sich auf die CSS-Datei, nicht auf die HTML-Datei.

    Welcher kaputte Browser macht das anders?

    LLAP 🖖

    --
    „Talente finden Lösungen, Genies entdecken Probleme.“ (Hans Krailsheimer)
    1. Hallo

      in meiner css Datei steht es z.B. so:

      background:url("../images/bild.png") no-repeat 0px 20px;

      das funktioniert aber nur mit den Seiten im Hauptverzeichnis.

      Nein. Der relative Pfad zum Bild bezieht sich auf die CSS-Datei, nicht auf die HTML-Datei.

      Auch wenn Mike in seiner Aufzählung nicht explizit den Pfad zu dem Bild vom Document Root aus angegeben hat, was lässt dich vermuten, dass sich die Angabe in der CSS-Datei nicht auf den relativen Pfad von der CSS-Datei aus bezieht?

      Ich rekonstruiere mal seine Angaben aus dem Eröffnungsposting.

      • index.html
      • seite2h.html
      • css/style.css
      • unterverzeichnis/Seite1.html
      • unterverzeichnis/Seite2.html
      • unterverzeichnis/unterverzeichnis/Seite1.html
      • unterverzeichnis/unterverzeichnis/Seite2.html

      Bliebe zu klären, ob sich das im CSS verlinkte Bild passend zur Angabe im CSS in die Struktur einordnet …

      • css/style.css
      • images/bild.png
      • unterverzeichnis/Seite1.html

      … oder eben nicht. Das muss uns Mike verraten.

      Tschö, Auge

      --
      Es schimmerte ein Licht am Ende des Tunnels und es stammte von einem Flammenwerfer.
      Terry Pratchett, „Gevatter Tod“
      1. @@Auge

        in meiner css Datei steht es z.B. so:

        background:url("../images/bild.png") no-repeat 0px 20px;

        das funktioniert aber nur mit den Seiten im Hauptverzeichnis.

        Nein. Der relative Pfad zum Bild bezieht sich auf die CSS-Datei, nicht auf die HTML-Datei.

        Auch wenn Mike in seiner Aufzählung nicht explizit den Pfad zu dem Bild vom Document Root aus angegeben hat, was lässt dich vermuten, dass sich die Angabe in der CSS-Datei nicht auf den relativen Pfad von der CSS-Datei aus bezieht?

        Mich nichts. Mike vermutet, dass der relative Pfad „nur mit den Seiten im Hauptverzeichnis [funktioniert]“.

        Und dem ist eben nicht so. Wenn die Seiten in Unterverzeichnissen dasselbe Stylesheet verwenden, dann funktioniert für diese der relative Pfad ebenso wie für die Seiten im Hauptverzeichnis. Es sei denn, der Browser ist kaputt.

        “For CSS style sheets, the base URI is that of the style sheet, not that of the source document.” [CSS 2.1]

        LLAP 🖖

        --
        „Talente finden Lösungen, Genies entdecken Probleme.“ (Hans Krailsheimer)