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

Fehler betr. <td background.....

losti

Neues Mitglied
Hallo und allen erst mal ein gutes 2010, mögen das neue Jahr allen Gesundheit bringen und alle Wünsche in Erfüllung gehen.....
Ich habe einen xtc Shop (nicht tabellenfrei!!) und natürlich nicht ohne Fehlermeldung, siehe [Invalid] Markup Validation of http://www.spezialitaetenshop.ch/ - W3C Markup Validator
Die Fehler, die ich nicht beseitigen kann betreffen <td background...Wenn ich den einen Fehler beseitigt habe, zeigt mir der Validator dafür wieder 2 mehr an. Es ist zum verzweifeln. Hier mal falsch und richtig. Könnte mir vielleicht jemand helfen und mir sagen, ob ich da ev. einen groben "Schnitzer" drin habe. Da ich mich nicht sehr gut auskenne in html und css noch eine weitere Frage betr. background...müsste ich da auch ev. was in die stylesheet.css schreiben?

falsch::-(
HTML:
<td height="31" valign="top" background="{$tpl_path}img/hl_cat.jpg" class="hl">{#heading_categories#}</td>

richtig::grin:
HTML:
<td style="height:31px; vertical-align:top; background:url({$tpl_path}img/hl_cat.jpg);" class="hl">{#heading_categories#}</td>

falsch::-(
HTML:
<td valign="top" style="padding-left:3px; padding-top:4px; background-image:url({$tpl_path}img/hl_index_02.jpg)"><b>&nbsp;<font color="#465C00">{$PRODUCTS_NAME}</font></b></td>

richtig::grin:
HTML:
<td valign="top" style="padding-left:3px; padding-top:4px; background="{$tpl_path}img/hl_index_02.jpg');" <b>&nbsp;<font color="#465C00">{$PRODUCTS_NAME}</font></b></td>

falsch::-(
HTML:
<td align="center" background="{$tpl_path}img/hl_index_05.jpg"><a style="color:#465C00" href="{$module_data.PRODUCTS_LINK}"><b>{$module_data.PRODUCTS_NAME}</b></a></td>

richtig::grin:
HTML:
<td style="align="center" background:url({$tpl_path}img/hl_index_05.jpg');"<a style="color:#465C00" href="{$module_data.PRODUCTS_LINK}"><b>{$module_data.PRODUCTS_NAME}</b></a></td>

falsch::-(
HTML:
<td valign="top" style="padding-left:3px;padding-top:4px" class="contentsTopics" background="{$tpl_path}img/hl_index_02.jpg"><b>&nbsp;<font color="#465C00">{#heading_text#}</font></b></td>

richtig::grin:
HTML:
<td valign="top" style="padding-left:3px;padding-top:4px;background:url('$tpl_path}img/hl_index_02.jpg');" class="contentsTopics" ><b>&nbsp;<font color="#465C00">{#heading_text#}</font></b></td>

falsch::-(
HTML:
<td background="{$tpl_path}img/header_03.jpg"><img src="{$tpl_path}img/pixel_trans.gif" alt="" /></td>

richtig:
HTML:
<td style="background:url('{$tpl_path}img/header_03.jpg');"><img src="{$tpl_path}img/pixel_trans.gif" alt="" /></td>

Mod-Edit: Code-Tags hinzugefügt - Beim nächsten Mal bitte dran denken (XraYSoLo)
 
Zuletzt bearbeitet von einem Moderator:
Werbung:
jede menge fehler, die aus invalidem markup resultieren. wird dir nichts anderes übrigbleiben, als die tabellen um zu schreiben, da dort attribute verwendet werden, die schon seit längerer zeit nicht mehr existieren.

Nils aka XraYSoLo
 
Werbung:
Eigentlich ist alles falsch, da man Tabellen nicht für sowas missbraucht.

Wenn Du jedoch nicht alles umbauen willst solltest Du wenigstens nicht erlaubte Attribute (wie background innerhalb eines <td>) und nicht mehr gültige HTML-Codes (wie <font>) weglassen. Eigentlich können alle durch CSS ersetzt werden, was Du ja scheinbar schon teilweise begonnen hast. Musst es nur noch vollenden.

Und übrigens: ein Template zu validieren, welches noch von der Shop-Software interpretiert werden muss ist ohnehin problematisch. Du siehst ja diese Platzhalter wie "{$tpl_path}", die könnten je nachdem wie und wo sie verwendet werden, auch einen HTML-Fehler verursachen. Also validiere immer nur das was Du auch im Browser lädst, nicht die Template-Dateien.
 
Nein, deine Beispiele gehen schon in die richtige Richtung.

HTML:
<td style="align="center" background:url({$tpl_path}img/hl_index_05.jpg');"<a style="color:#465C00" href="{$module_data.PRODUCTS_LINK}"><b>{$module_data.PRODUCTS_NAME}</b></a></td>

Wo bei denen noch Fehler liegen, zeigt teilweise schon das Syntax-Highlighting.

Besser:

HTML:
<td style="text-align: center; background:url('{$tpl_path}img/hl_index_05.jpg');">
<a style="color: #465C00;" href="{$module_data.PRODUCTS_LINK}">
<b>{$module_data.PRODUCTS_NAME}</b>
</a>
</td>

Noch besser wäre vielleicht der Einsatz von CSS.

HTML:
<td class="demo">
<a href="{$module_data.PRODUCTS_LINK}">
<strong>{$module_data.PRODUCTS_NAME}</strong>
</a>
</td>

Code:
td.demo {
    text-align: center;
    background:url('pfad-zum-template/img/hl_index_05.jpg');
}

td.demo a {
    color: #465C00;
}

Edit: Ansonsten siehe natürlich threadi. Ich habe deinen Link gar nicht angeklickt. :)
 
Werbung:
Das sieht für mich aus als hättest Du ein Problem mit deinem Tabellengerüst. Ist eh zu komplex sowas für eine Webseite. Kontrolliere das mal haargenau, vieles dürften dann wenn Du den eigentlichen Fehler gefunden hast nur Folgefehler sein.
 
Ich habe es dank den Hilfestellungen hingekriegt, die Seite ist valide. Dankeschön - merci - grazie
 
Zurück
Oben