2k Aufrufe
Gefragt in Webseiten HTML von timoxy Mitglied (133 Punkte)
Liebe Forum-Gemeinde,

ich habe eine Frage zu den alt-Tags von Bildern (img).
Habe bei Google leider nichts gefunden.

Und zwar erscheint doch beim überfahren eines Bildes (manchmal) der Text, der im alt-Tag fest gelegt ist. (Bild wird normal geladen)

Ich nenne diese Ausgabe jetzt einfach mal alt-Tag-Fähnchen, da ich nicht genau weiß was hier der offizielle Name ist.

<img src="bild.jpg" alt="Dieser Text soll angezeigt werden!" />


Wieso wird dieses Fähnchen jetzt manchmal angezeigt und manchmal nicht.

IE 6 und 7 wird angezeigt
IE 8 nicht.

Firefox Mac und Win nicht

Bei dieser Seite (nicht von mir) wird jetzt jedoch wenn man über die Länderflagge fährt die Fahne angezeigt: handytech.de

Und zwar in jedem Browser. IE 6-8 und FF Mac und Win

Die haben doch auch nur alt-Tags vergeben.

Gibt es irgendeinen Trick?

Danke für Eure Antworten.

Grüße Timo

5 Antworten

0 Punkte
Beantwortet von kjg17 Profi (34.4k Punkte)
Hallo Timo,

nimm mal den Schrägstrich (Slash) an Ende img-Tags raus, der gehört da eigentlich nicht hin.

Das ist aber vermutlich nicht das Problem, sondern die Verwendung von alt= für die Anzeige. Für die von dir gewünschten Tooltipps ist standardmäßig title= zuständig, alt= soll nur etwas über den Inhalt eines Bildes aussagen, wenn dieses aus verschiedenen Gründen mal nicht dargestellt werden kann. Die älteren IEs halten sich aber nicht daran und zeigen auch die Angaben zu alt= als Tooltipp an.

Gruß
Kalle
0 Punkte
Beantwortet von timoxy Mitglied (133 Punkte)
nimm mal den Schrägstrich (Slash) an Ende img-Tags raus, der gehört da eigentlich nicht hin.


Da sagt aber W3C etwas ganz anderes...
Line 40, Column 87: end tag for "img" omitted, but OMITTAG NO was specified

…="images/rss.jpg" alt="RSS Abonnieren" title="RSS Abonnieren" ></a>&nbsp;&nbsp;

You may have neglected to close an element, or perhaps you meant to "self-close" an element, that is, ending it with "/>" instead of ">".


Stimmt mit dem title-Tag funktioniert es.

Muss ich den title dann im "img" setzen oder im "a" oder geht beides. Handytech hat den "alt" im Bild und den "title" im Link.

D.h. ich muss jetzt überall auch noch einen title="" einfügen?

Oder gibt es noch einfachere Lösungen?

Grüße Timo
0 Punkte
Beantwortet von
in img gehört immer ein alt-Attribut

Manche Browser stellen das fälschlciherweise dar, wenn die Maus darüber steht, dies Verhalten gehört eigentlich aber zum title-Attribut.

Es reicht, das title-Attribut entweder ins umgebende Element (a) oder ins innere Element (img) zu schreiben. title ist ein Universalattribut und darf in jedem Element stehen.

der schließende Schrägstrich in img ist zwingend erforderlich bei XHTML und verboten bei HTML4 oder HTML5
0 Punkte
Beantwortet von timoxy Mitglied (133 Punkte)
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">


somit mit schließendem Schrägstrich.

title im Link wenn z.B. Icon und Text verlinkt sind
title im Bild wenn nur Bild bzw. nicht verlinkt

Ich denke ich habe es verstanden.

Ich danke euch beiden.
0 Punkte
Beantwortet von kjg17 Profi (34.4k Punkte)
Hallo Timo,

ist halt schon eine Weile her bei mir. ;0) Auch die s.g. Standalone-Tags sind in XHTML abzuschließen, also lass den Slash drin. Man könnte es zwar umstellen, was die o.a. W3C-Meldung auch anspricht, aber das mach natürlich keinen Sinn.

Theoretisch könntest du einfach alt= durch title= ersetzen lassen, aber wie gast_42 schon sagte, alt= ist seit HTML 4 ein Pflicht-Attribut bei Grafiken, auch wenn es dann selbst nichts enthält. Bei Grafiken, die ausschließlich der Gestaltung einer Seite dienen ist z.B. alt="" durchaus sinnvoll.

Wenn du verhindern willst, dass ein Alt-Attribut durch ältere Browser doch angezeigt wird, was ja manchmal auch stört, setzte innerhalb des img-Tags noch title="", diese Nicht-Anzeige hat dann Vorrang.

Gruß
Kalle
...