expertenaustausch > comm.* > comm.infosystems.www.authoring.misc

Andreas Kohlbach (08.12.2018, 22:41)
Bietet HTML oder CSS die Möglichkeit, ein Bild aus einer anderen Quelle
anzuzeigen, falls das die Hauptquelle nicht zur Verfügung steht?

Ich habe am Beispiel

body {
background-image:url(
....
}

eingebaut.

Wenn nicht, kann Javascript oder PHP das? Vielleicht sonst per .htaccess?
Arno Welzel (08.12.2018, 22:45)
Andreas Kohlbach:

> Bietet HTML oder CSS die Möglichkeit, ein Bild aus einer anderen Quelle
> anzuzeigen, falls das die Hauptquelle nicht zur Verfügung steht?


Nein.

> Ich habe am Beispiel
> body {
> background-image:url(
> ...
> }
> eingebaut.
> Wenn nicht, kann Javascript oder PHP das? Vielleicht sonst per .htaccess?


..htaccess - eher nicht. Aber mit PHP wäre das sicher lösbar.

Wieviel willst Du für die Programmierung eines entsprechenden Scripts
anlegen?
Andreas Kohlbach (08.12.2018, 23:36)
On Sat, 8 Dec 2018 21:45:03 +0100, Arno Welzel wrote:
> Andreas Kohlbach:
>> Bietet HTML oder CSS die Möglichkeit, ein Bild aus einer anderen Quelle
>> anzuzeigen, falls das die Hauptquelle nicht zur Verfügung steht?

> Nein.


Danke.

Oder doch? Laut
<https://stackoverflow.com/questions/980855/inputting-a-default-image-in-case-the-src-attribute-of-an-html>
scheint das möglich. Eben aber keine Zeit, das zu probieren (habe keinen
Zugriff auf den anderen Server von diesem Rechner aus). Das Beispiel
nennt unter anderem:

<p>
<object data="http://stackoverflow.com/does-not-exist.png" type="image/png">
<img src="https://appharbor.com/assets/images/stackoverflow-logo.png" alt="example">
</object>
</p>

> .htaccess - eher nicht. Aber mit PHP wäre das sicher lösbar.
> Wieviel willst Du für die Programmierung eines entsprechenden Scripts
> anlegen?


Wenn, sollte etwas bereits existieren und sich schnell ergoogeln lassen.
Maik Koenig (09.12.2018, 01:12)
Am 08.12.2018 um 21:41 schrieb Andreas Kohlbach:

> Wenn nicht, kann Javascript oder PHP das?

Die einfachste Lösung dürfte sein, innerhalb des img-Tags schlicht per
JavaScript einen eventuellen Fehler abzufangen:

<img src='gibtsnicht.jpg' onerror="this.src='sorryfehlerbild.jpg'">

Das funktioniert natürlich nur bei aktivem JavaScript und neben "Das
Bild gibts nicht" kann es noch andere Fehler geben die das triggern würden.

Greetz,
MK
Arno Welzel (09.12.2018, 10:25)
Andreas Kohlbach:

[..]
> <img src="https://appharbor.com/assets/images/stackoverflow-logo.png" alt="example">
> </object>
> </p>


Ok, das wäre eine Option, wenn auch nicht sehr schön, da dann immer zwei
Bilder geladen werden. Ist das zweite Bild nicht vorhanden, erscheint
eben nur das erste, sonst eben das zweite.

background-image ginge auch - hat aber genau den selben Nachteil, dass
das Platzhalterbild in jedem Fall geladen wird, egal ob es überhaupt
gebraucht wird. Aber wenn das kein Problem ist, wäre so ein Workaround
denkbar, ja.
Andreas Kohlbach (09.12.2018, 23:19)
On Sun, 9 Dec 2018 00:12:48 +0100, Maik Koenig wrote:
> Am 08.12.2018 um 21:41 schrieb Andreas Kohlbach:
>> Wenn nicht, kann Javascript oder PHP das?

> Die einfachste Lösung dürfte sein, innerhalb des img-Tags schlicht per
> JavaScript einen eventuellen Fehler abzufangen:
> <img src='gibtsnicht.jpg' onerror="this.src='sorryfehlerbild.jpg'">


Geht das auch für mit CSS eingebundene Bilder wie in meinem Fall?

> Das funktioniert natürlich nur bei aktivem JavaScript und neben "Das
> Bild gibts nicht" kann es noch andere Fehler geben die das triggern würden.


Ich würde annehmen, das bald 99% meiner Besucher Javascript aktiviert
haben, sodass der Rest halt mit "keinem Hintergrund" leben müssen.
Andreas Kohlbach (09.12.2018, 23:19)
On Sun, 9 Dec 2018 09:25:51 +0100, Arno Welzel wrote:
> Andreas Kohlbach:
> Ok, das wäre eine Option, wenn auch nicht sehr schön, da dann immer zwei
> Bilder geladen werden. Ist das zweite Bild nicht vorhanden, erscheint
> eben nur das erste, sonst eben das zweite.
> background-image ginge auch - hat aber genau den selben Nachteil, dass
> das Platzhalterbild in jedem Fall geladen wird, egal ob es überhaupt
> gebraucht wird. Aber wenn das kein Problem ist, wäre so ein Workaround
> denkbar, ja.


Danke Dir. Werde ich versuchen.
Maik Koenig (10.12.2018, 01:30)
Am 09.12.2018 um 22:19 schrieb Andreas Kohlbach:
> On Sun, 9 Dec 2018 00:12:48 +0100, Maik Koenig wrote:
> Geht das auch für mit CSS eingebundene Bilder wie in meinem Fall?


Nicht direkt. Aber man kann z.B. per document.body.style.backgroundImage
selbiges abfragen, nach dem fertigen Laden der Seite kontrollieren ob es
auch da ist und ggf ein anderes setzen. Das Endergebnis wäre ja dasselbe.

Dabei aber wirklich document.body.style.backgroundImage abfragen und
nicht z.B. auf die Erreichbarkeit einer bestimmten Grafik testen, sonst
müsstest Du das Hintergrundbild immer sowohl im CSS als auch im Script
anpassen wenn Du da was ändern willst.

>> Das funktioniert natürlich nur bei aktivem JavaScript und neben "Das
>> Bild gibts nicht" kann es noch andere Fehler geben die das triggern würden.

> Ich würde annehmen, das bald 99% meiner Besucher Javascript aktiviert
> haben, sodass der Rest halt mit "keinem Hintergrund" leben müssen.


Ich würde die Annahme sogar auf 99,99% steigern.

Was die Hintergrundgrafik ansich an geht: Ich setze in meinen Userstyles
den Hintergrund von "body" immer auf einen eigenen Wert, ebenso wie
Schriftfarbe. Zuviele HTML-Bastler setzen z.B. rote Schrift auf gelben
Hintergrund, muss nicht sein.

Greetz,
MK
Ähnliche Themen