• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Link im Blockelement

tinker

Neues Mitglied
Hallo,
ich bin noch Anfänger was den ganzen Code an geht, und zwar habe ich ein Problem mit einem Code, der
ja so falsch ist, und ich nicht weis wie ich den
richtig setze, ich habe raus gefunden das ein
Link nicht innerhalb von einem Blockelement sein
darf, aber ich weis nicht so ganz wie ich es
sonst machen kann.
Hier mal der Code.
HTML:
<a title="{$PRODUCTS_NAME}" href="{$PRODUCTS_IMAGE|replace:"info_images":"popup_images"}" class="thickbox" rel="{$PRODUCTS_ID}"><img src="{$PRODUCTS_IMAGE}" alt="{$PRODUCTS_NAME}" class="productimage" />{if $PRODUCTS_POPUP_LINK!=''}<div class="hrlightgrey"></div>{#text_zoom#}{/if}</a>

Wie kann ich das ganze richtig machen.
Gruß
Tinker
 
Ein Link in einem Blockelement? Problemlos!

Was genau ist Dein Problem? Wenn ich aus obigem Code das rausnehme, was nicht HTML ist, habe ich ein Image, das in einem Link steht. Kein Blockelement, kein Fehler.

Wie können wir Dir helfen?
 
Hallo,
mein Problem ist, das ich versuche es Valide zu bekommen, und bringt mir immer den Teil.
HTML:
<div class="hrlightgrey"></div>
als Fehler
Gruß
Tinker
 
Auch das ist kein Fehler (zumindest kein syntaktischer).

Wenn Du Fehler gemeldet bekommst, bitte gewöhne Dir an:
- die vollständige Fehlermeldung zu posten
- mindestens die angegebene Code-Zeile mit einigen Zeilen darüber und darunter anzugeben
- idealerweise einen Link zur Seite oder zum Validator-Ergebnis anzugeben

Nur so kann man Dir effektiv helfen.
 
da ist irgendwo ein anführungszeichen zuviel/zuwenig oder gehört escaped
HTML:
<a title="{$PRODUCTS_NAME}" href="{$PRODUCTS_IMAGE|replace:"info_images":"popup_images"}" class="thickbox" rel="{$PRODUCTS_ID}"><img src="{$PRODUCTS_IMAGE}" alt="{$PRODUCTS_NAME}" class="productimage" />{if $PRODUCTS_POPUP_LINK!=''}<div class="hrlightgrey"></div>{#text_zoom#}{/if}</a>

|replace:"info_images":"popup_images"}"sollte doch noch interpretiert werden oder denke ich da falsch?
 
Hallo,
sorry mein fehler, also nochmal von vorne, der Validator meldet mir folgendes.
In der Zeile.
HTML:
<a title="{$PRODUCTS_NAME}" href="{$PRODUCTS_IMAGE|replace:"info_images":"popup_images"}" class="thickbox" rel="{$PRODUCTS_ID}"><img src="{$PRODUCTS_IMAGE}" alt="{$PRODUCTS_NAME}" class="productimage" />{if $PRODUCTS_POPUP_LINK!=''}<div class="hrlightgrey"></div>{#text_zoom#}{/if}</a>
document type does not allow element "div" here; missing one of "object", "applet", "map", "iframe", "button", "ins", "del" start-tag

Hilft das so weiter ?
Gruß
Tinker
 
Du hast innerhalb eines Links ("a") einen Div:
Code:
<div class="hrlightgrey"></div>
Und das ist nach der Elementreferenz unzulässig.
Innerhalb a darf es nur Inlineelemente geben und keine Blockelemente.
 
Hallo,
ok das habe ich auch schon so verstanden, und ja auch versucht so zu erklären, das dieses Div da in dem Blockelement nicht korrekt ist, aber ich finde nicht bei Google wie ich das jetzt richtig machen müßte, damit der nicht mehr meckert, nehme ich das div weg ist auch der Fehler weg, aber dafür ist dann auch der link unter dem Bild wo steht bild vergrößern weg.
Gruß
Jana
 
Hallo prm,
ok habe es jetzt so mal eingegeben.
HTML:
<a title="{$PRODUCTS_NAME}" href="{$PRODUCTS_IMAGE|replace:"info_images":"popup_images"}" class="thickbox" rel="{$PRODUCTS_ID}"><img src="{$PRODUCTS_IMAGE}" alt="{$PRODUCTS_NAME}" class="productimage" />{if $PRODUCTS_POPUP_LINK!=''}<span class="hrlightgrey" />{#text_zoom#}{/if}</a>

Jetzt kommt vom Validator nur noch eine Warnung mit dem trimming empty <span> ist das so richtig ?

Gruß
Tinker
 
Ok meinst Du das so:
HTML:
<span class="hrlightgrey"></span>

oder so ?
HTML:
<span> class="hrlightgrey"</span>

beides bleibt entweder Fehler oder Warnung.
Gruß
Tinker
 
Ersteres wäre korrekt.
Es kommt ggf. dann auch drauf an, wie diese Klasse definiert ist.
So allein nach dem code ist das Element ja inhaltsleer.

Am besten wäre mal ein Link zu dieser Seite, so dass man alles im Zusammenhang sieht.
 
ok das habe ich auch schon so verstanden, und ja auch versucht so zu erklären, das dieses Div da in dem Blockelement nicht korrekt ist
Das war dann das Missverständnis, denn das <div> steht ja nicht in einem Block- sondern in einem Inline-Element, dem <a>.
 
Hallo Efchen,
ja ok wie gesagt, das war mein Fehler, aber könnt Ihr mir irgendwie helfen den Fehler zu beseitigen, oder kann ich das ganze anders vom Code her schreiben das es passt ?

Hallo prm,
ja das Sie jetzt Valide sind weis ich ja, aber dafür ist ja durch das span der Link neben das Bild anstatt drunder, und er zeigt ja trotzdem die Warnung an, aber keine Fehler mehr, kann man das auch irgendwie lösen ?
Gruß
Tinker
 
Also ich für meinen Teil wünsche mir jetzt (ja, ich weiß, Weihnachten ist noch nicht) einen Link zur Seite und nochmal eine genaue Fehlerbeschreibung und eine Beschreibung dessen, was Du möchtest.

Dass irgendein Validator bei einem leeren Tag bemängelt, dass das Tag leer ist, kann ich verstehen, denn HTML dient ja zur Inhaltsauszeichnung. Wo aber kein Inhalt ist, brauche ich nichts auszuzeichnen. Aus Sicht von HTML ist das Tag natürlich überflüssig.
 
Hallo,
also in Moment habe ich den Link unter dem Bild wo normaler weise steht Bild Vergrößern raus genommen, da es so nicht funktioniert, wenn ich den Link anstatt im Div in ein Span setze, ist die Seite zwar valide, aber die Warnmeldung bleibt, und den Teil für die CSS funktioniert auch nicht, der Link wird dann neben dem Bild verschoben anstatt darunter so wie es sein sollte.
In Moment habe ich keine Lösung dafür gefunden, wie man das ganze hinbekommt, das es sauber Formatiert ist, und auch vom Validator angenommen wird. Der Code ist ja hier in dem Tread weiter oben drin, falls Ihr noch eine Lösung für mich habt, probiere ich das noch gerne aus.
Danke erstmal für eure Liebe Hilfsbereitschaft.
Gruß
Tinker
 
Zurück
Oben