webForumDet fria alternativet

Radbryt

14 svar · 522 visningar · startad av bluespot

bluespotMedlem sedan nov. 200093 inlägg
#1

Har kollat runt här på forumet men får inte kläm på det här med radbrytningar.

Jag antar att man ska använda nl2br, men hur?

<?php echo $row_rsNyheter['text']; ?>
PeeerMedlem sedan mars 20025 362 inlägg
#2
<?php echo nl2br($row_rsNyheter['text']); ?>
bluespotMedlem sedan nov. 200093 inlägg
#3

Tack för snabbt svar, nu är det bara en sak kvar.

Om man vill ha en tom rad emellan, alltså:
Rad1

Rad2

Hur skriver jag då?

Nu blir det bara:
Rad1
Rad2

EitrazMedlem sedan sep. 2002385 inlägg
#4

Du kan använda kommandon str_replace istället.

echo str_replace("\n","<br><br>",$row_rsNyheter['text']);
bluespotMedlem sedan nov. 200093 inlägg
#5

Nu är det något konstigt här.

Jag provade med

<?php echo nl2br($row_rsNyheter['text']); ?>

I IE6 ser det ut så här:
Rad1
Rad2
Rad3

Men i koden ser det ut såhär:
Rad1<br />
<br />
Rad2<br />
<br />
Rad3

I IE5 på Mac blir det rätt.

EitrazMedlem sedan sep. 2002385 inlägg
#6

Det är helt ok ;)

PeeerMedlem sedan mars 20025 362 inlägg
#7

Eitraz skrev:

Det är helt ok ;)

Que?

bluespot > Har du någon länk till sidan i fråga? Det verkar helt klart udda.

EitrazMedlem sedan sep. 2002385 inlägg
#8

När man använder nl2br så blir radbrytningarna <br /> (i koden)

PeeerMedlem sedan mars 20025 362 inlägg
#9

Eitraz skrev:

När man använder nl2br så blir radbrytningarna <br /> (i koden)

Ja det blir det, men vad har det med frågan att göra? Bluespot frågade varför det blev 2 br-taggar, men ie bara visade det som en (dvs ingen blankrad mellan textraderna).

EitrazMedlem sedan sep. 2002385 inlägg
#10

Hoppsa, fel av mig då, missade att det var två rader där ;)

sorry

bluespotMedlem sedan nov. 200093 inlägg
#11

Jag kan tyvärr inte länka direkt till sidan men här är koden:

<table width="360" border="0" cellspacing="0" cellpadding="0">
    <tr>
      <td><p class="header">Nyheter</p>
      <?php do { ?>
      <p><strong><?php echo $row_rsNyheter['datum']; ?></strong><br />
      <?php echo nl2br($row_rsNyheter['text']); ?></p>
      <?php } while ($row_rsNyheter = mysql_fetch_assoc($rsNyheter)); ?></td>
    </tr>
  </table>

Och såhär ser det ut i koden på i webbläsaren:

<table width="360" border="0" cellspacing="0" cellpadding="0">
    <tr>
      <td><p class="header">Nyheter</p>
     <p><strong>2004-08-24</strong><br />
Rad1<br />
<br />
Rad2<br />
<br />
Rad3</p>
     </td>
    </tr>
  </table>
PeeerMedlem sedan mars 20025 362 inlägg
#12

Och den koden visas i IE6 bara som en radbrytning (dvs, inga blankrader mellan raderna)? Du har ingen css-kod (eller liknande) som gör att br-taggen uppträder udda?

Annars har jag ingen aning.

bluespotMedlem sedan nov. 200093 inlägg
#13

Jag provade att lägga koden på en helt tom sida utan css, då visades den rätt.

Men vad i css:en kan få en br-tagg att uppföra sig sådär?

bluespotMedlem sedan nov. 200093 inlägg
#14

Jag tog bort "letter-spacing" i css:en och nu fungerar allt som det ska.

Tack för hjälpen!

Nexus86Medlem sedan okt. 20022 683 inlägg
#15

bluespot skrev:

Jag tog bort "letter-spacing" i css:en och nu fungerar allt som det ska.

Jag har också haft problem med letter-spacing i IE. Någon som vet någon work-around eller ska jag helt sluta använda letter-spacing?

Genererad på 513 ms · cache AV · v20260730165559-full.f96bc7eb