djevil-ad
Goto Top

"Riesen Image bug"

Hallo und Guten Abend,

Ich habe leider einen blöden Fehler auf meiner Webseite, und zwar wird beim Laden das erste Image immer riesengross dagestellt,

Es ist prozentual und soll mit der Seite skalieren,

<div id="leftheadcell" class="left head cell">  
		
		    <img src="./images/logo147.png" width="62%" />  

</div>

Das Logo ist 147x147, und die 62% sind relativ zum Elternelement, also ist da wohl irgendwo der fehler zu suchen, aber im moment blicke ich es leider nicht?
Ich weiss nicht ob ich jetzt den Link hier posten darf, ansonsten kann ich hier noch den Css posten:

.head
{
text-align: center;
vertical-align: top;
padding: 1%;
}

#leftheadcell
{
width: 20.8%;
}

Das Logo erscheint nur beim ersten laden zu gross, (bei einer schnellen Verbindung fällt das nicht so auf, ist aber trotzdem hässlich)

Vielleicht kann mir einer helfen, ich hab schon einiges probiert...

Mit freundlichen Grüßen

Content-ID: 282542

Url: https://administrator.de/contentid/282542

Ausgedruckt am: 15.11.2024 um 11:11 Uhr

certifiedit.net
certifiedit.net 10.09.2015 um 21:09:19 Uhr
Goto Top
Hallo djevil,

wie wäre es, wenn du einfach die Site postest?

Vermutlich wird das übergeordnete Element erst später (ext css?) geladen?

VG
certifiedit.net
certifiedit.net 10.09.2015 um 22:06:52 Uhr
Goto Top
Welches Bild? Top?
bytecounter
bytecounter 11.09.2015 um 08:26:03 Uhr
Goto Top
Hallo,

Prozentangaben sind ja relativ zu übergeordneten Elementen. Diese haben einen Standardwert, bis sie durch das CSS "überschrieben" werden. Wenn nun das Bild vor dem CSS geladen ist, kann es passieren, dass dies erst in falscher Größe dargestellt wird. Verhindern kannst Du dies, indem Du per HTML-Attribut (width oder height) eine absolute Größe in Pixeln vorgibst - oder das (wichtige) CSS in die HTML-Datei integrierst.

Unter dem geposteten Link kann ich allerdings das von Dir genannte Logo nicht finden. Auch das Wasserfalldiagramm sieht bei mir gut aus, die Bilder werden erst kurz nach dem CSS geladen und brauchen auch deutlich länger.

EIn anderer Lösungsansatz:
Dem body das CSS Attribut display:none mitgeben; und erst, wenn alles geladen ist, per Javascript auf display:block setzen. Allerdings solltest Du dann bei deaktiviertem Javascript einen Hinweis einbauen (unschön) oder so gestalten, dass das Attribut nur bei aktiviertem JS angewendet wird.

vg
Bytecounter
Lochkartenstanzer
Lochkartenstanzer 11.09.2015 aktualisiert um 17:43:01 Uhr
Goto Top
Also ich sehe da keinen Fehler in meinem Browser (FF 40.0.3 auf Ubuntu 12.04.5 LTS ), habe aber auch den Quellcode nicht angeschaut.

lks
djevil-ad
djevil-ad 11.09.2015 aktualisiert um 18:18:29 Uhr
Goto Top
Den ersten Fehler konnte ich korrigieren, in dem ich das css mit "link rel" statt @import importiert habe, das mochte zumindest der Firefox nicht,
Die Bilder laden jetzt aber immer noch zu gross, was auch klar ist, er lädt sie erst mit 100% und berechnet aus den css basierend dann die letztliche Grösse.

Aber wie gesagt, es fällt erst bei einer langsamen Verbindung auf, (die ich leider im moment nur habe), und es werden halt auch erstmal die Platzhalter angezeigt, was natürlich auch nicht so schön ist.

JS wollte ich erstmal für die Basiswebseite nicht benutzen, also muss ich vernmutlich der table-row mit den Images erstmal eine fixe Höhe geben, und sie dann später überschreiben,
schaun wa mal..

Gruss

dv