2010-10-18 15 views
4

Mon code est le suivant:<span> balise de césure ligne dans IE7

<table> 
    <tr> 
     <td> 
      <div id='lunch'><a href='Lunchplace.aspx?c=1&id=110'><img style='margin-top: 3px;' src='./images/115x52_Brasseriet.jpg'class='imagealign'/><b>Brasseriet</b><br />Köttbullar med gräddsås & kokt pota...&nbsp;<span style='color:#f29400;font-size:small;float:right;'>80 Kr<span style='float:right;'>70 Kr</span>&nbsp;&nbsp;&nbsp;&nbsp;</span><br />Kycklinggryta med örtcremefraishe &...&nbsp;<span style='color:#f29400;font-size:small;float:right;'>80 Kr<span style='float:right;'>70 Kr</span>&nbsp;&nbsp;&nbsp;&nbsp;</span><br />Paj, Lasagne, Räksallad, Kycklingsa...&nbsp;<span style='color:#f29400;font-size:small;float:right;'>79 Kr<span style='margin-right:40px'></span></span></div> 
     </td> 
    </tr> 
    <tr> 
     <td><img src='./images/siteimages/linje_430.jpg'/></td> 
    </tr> 
</table> 

Et il semble aweful dans IE7, Tous les autres navigateurs rendent correct, mais il semble que IE7 faire des pauses de ligne aux travées, même si les travées sont des éléments en ligne .. Ill ajouter une image afin que vous puissiez comprendre!

example of problem http://img2.imageshack.us/img2/3130/humm.png

Je suis sûr que vous pouvez voir mon problème!

En réponse à la roquette ronny Heres le code tel qu'il semble maintenant (généré automatiquement certaines parties)

Lunches = Lunches + "<table cellspacing='0' cellpadding='0' width='500px;'><tr> <td><div id='lunch'><a href='Lunchplace.aspx?c=1&id=110'><img style='margin-top:3px;' src='./images/" + Img + "'class='imagealign'/><strong>" + k.Name + "</strong><br />" + checkLength(k.Monday) + "&nbsp;" + "<span style='color:#f29400; font-size:small; float:right;'>" + checkZero(k.Monday, k.PriceMonS, 1).ToString + checkZero(k.Monday, k.PriceMonGet, 2).ToString + "</span>&nbsp;&nbsp;&nbsp;&nbsp;</span><br />" + checkLength(k.Monday2) + "<span style='color:#f29400; font-size:small;float:right;'>" + checkZero(k.Monday2, k.PriceMon2S, 1).ToString + checkZero(k.Monday2, k.PriceMon2Get, 2).ToString + "</span>&nbsp;&nbsp;&nbsp;&nbsp;<br />" + checkLength(k.Monday3) + "<span style='color:#f29400;font-size:small;float:right;'>" + checkZero(k.Monday3, k.PriceMon3S, 1).ToString + checkZero(k.Monday3, k.PriceMon3Get, 2).ToString + "</span></div></td></tr><tr><td><img src='./images/siteimages/linje_430.jpg'/></td></tr></table>" 

C'était le code que vous avez dit cela fonctionnerait, mais il semble le même que d'habitude.

est ici l'auto de code d'origine généré:

Lunches = Lunches + "<table> <tr> <td><div id='lunch'>" + "<a href='Lunchplace.aspx?c=" + city.ToString + "&id=" + k.ResturantID.ToString() + "'><img style='margin-top: 3px;' src='./images/" + Img + "'class='imagealign'/>" + "<b>" + k.Name + "</b>" + "<br />" + checkLength(k.Monday) + "&nbsp;" + "<span style='color:#f29400;font-size:small;text-align:right;'>" + checkZero(k.Monday, k.PriceMonS, 1).ToString + checkZero(k.Monday, k.PriceMonGet, 2).ToString + "</span><br />" + checkLength(k.Monday2) + "&nbsp;" + "<span style='color:#f29400;font-size:small;text-align:right'>" + checkZero(k.Monday2, k.PriceMon2S, 1).ToString + checkZero(k.Monday2, k.PriceMon2Get, 2).ToString + "</span><br />" + checkLength(k.Monday3) + "&nbsp;" + "<span style='color:#f29400;font-size:small;text-align:right;'>" + checkZero(k.Monday3, k.PriceMon3S, 1).ToString + checkZero(k.Monday3, k.PriceMon3Get, 2).ToString + "</span></div></td></tr><tr><td><img src='./images/siteimages/linje_430.jpg'/></td></tr></table>" 
+0

Le code est difficilement lisible. Vous pouvez utiliser un formateur HTML en ligne pour résoudre ce problème. –

Répondre

4

Votre portée "intérieure" a une propriété css de float: right; - Cela provoque les sauts de ligne dans IE

le code ci-dessous devrait fonctionner.

<table cellspacing="0" cellpadding="0"> 
    <tr> 
     <td> 
      <div id="lunch"> 
       <a href='Lunchplace.aspx?c=1&id=110'><img style="margin-top: 3px;" src="./images/115x52_Brasseriet.jpg'class='imagealign"/><strong>Brasseriet</strong> 
       <br />Köttbullar med gräddsås &amp; kokt pota... &nbsp; <span style="color:#f29400; font-size:small; float:right;">80 Kr<span style="margin-left:20px;">70 Kr</span>&nbsp;&nbsp;&nbsp;&nbsp;</span> 
       <br />Kycklinggryta med örtcremefraishe &amp;... &nbsp; <span style="color:#f29400; font-size:small;float:right;">80 Kr<span style="margin-left:20px;">70 Kr</span>&nbsp;&nbsp;&nbsp;&nbsp;</span> 
       <br />Paj, Lasagne, Räksallad, Kycklingsa... &nbsp; <span style='color:#f29400;font-size:small;float:right;'>79 Kr<span></span>&nbsp;&nbsp;&nbsp;&nbsp;</span> 
      </div> 
     </td> 
    </tr> 

    <tr> 
     <td> 
      <img src='./images/siteimages/linje_430.jpg'/> 
     </td> 
    </tr> 
</table> 
+0

Hmm, ne semble pas fonctionner ... Le code que j'ai soumis est généré automatiquement .... mais mal montrer les deux codes comme ils regardent maintenant. – Jimmy

+0

Eh bien, deffo le flotteur de portée interne qui cause le problème, essayez de supprimer tous les styles de celui-ci (la portée interne), et de travailler à partir de là –

1

Votre ligne est la rupture à cause du "float: right;" Attribut CSS que vous avez sur l'élément span. Ajouter éventuellement style = "clear: both" à votre drapeau TD corrigera ceci

+0

Il n'a pas, D'autres idées? ou de toute autre façon je peux le faire? – Jimmy