S SoulGod Medlem sedan aug. 2005 1 200 inlägg Frågan 31 mars 2009 18:43 #1 Sitter och läser in lite info från en databas med följande kod:
<table width="260px">
<?
$query_gig = "SELECT * FROM gig";
$gig = mysql_query($query_gig) or die(mysql_error());
$totalRows_gig = mysql_num_rows($gig);
while($row_gig = mysql_fetch_assoc($gig)) {
?>
<tr>
<td width="60px"><h3><? echo $row_gig['date']; ?></h3></td>
<td><h3><? echo $row_gig['band']; ?></h3></td>
<td><h3><? echo $row_gig['stad']; ?></h3></td>
<td><h3><? echo $row_gig['arena']; ?></h3></td>
</tr>
<? } ?>
</table>
Mitt problem är nu att det blir en tom rad mellan varje inläst rad?
Säg att den läser in första $row_gig ...
Sen blir det precis som om det vore ett "<br>" ,
för att sedan ha nästa inlästa rad? ungefär såhär:
Datum1 | Band1 | Stad1 | Arena1
<--- TOM RAD --->
Datum2 | Band2 o.s.v
Den genererade HTML koden ser ut såhär:
<table width="260px">
<tr>
<td width="60px"><h3>2009-04-08</h3></td>
<td><h3>Millencollin</h3></td>
<td><h3>Göteborg</h3></td>
<td><h3>StickyFingers</h3></td>
</tr>
<tr>
<td width="60px"><h3>2009-04-18</h3></td>
<td><h3>Nightwish</h3></td>
<td><h3>Stockholm</h3></td>
<td><h3>Globen</h3></td>
</tr>
<tr>
<td width="60px"><h3>2009-04-28</h3></td>
<td><h3>Ebba Gold</h3></td>
<td><h3>Falun</h3></td>
<td><h3>Stora Torget</h3></td>
</tr>
</table>
Vet inte varför det kommer in tom rad i HTML där,
men kan det vara det som är felet?
Du lägger ju in det i din loop
<table width="260px">
<?
$query_gig = "SELECT * FROM gig";
$gig = mysql_query($query_gig) or die(mysql_error());
$totalRows_gig = mysql_num_rows($gig);
while($row_gig = mysql_fetch_assoc($gig)) {
?>
<tr>
<td width="60px"><h3><? echo $row_gig['date']; ?></h3></td>
<td><h3><? echo $row_gig['band']; ?></h3></td>
<td><h3><? echo $row_gig['stad']; ?></h3></td>
<td><h3><? echo $row_gig['arena']; ?></h3></td>
</tr><? } ?>
</table>
Men det spelar ingen roll om det är en extra rad, den rendera den ändå inte i HTML.
S SoulGod Medlem sedan aug. 2005 1 200 inlägg Exakt vad är det jag lägger in menar du?
Har inga tomma rader ( eller BR ) vad jag vet?
M metalboy Medlem sedan jan. 2005 953 inlägg Det är väl <h3> som gör det? Sätter man margin 0 på h3 så försvinner den "tomma raden" mellan varje rad för mig...
S SoulGod Medlem sedan aug. 2005 1 200 inlägg Varför gör H3 taggen det?
Den skall ju bara formatera text?
Säger inte att du har fel - blir bara väldigt förvånad??
HTML koden:
<table width="260px">
<tr>
<td width="60px"><h3>2009-04-08</h3></td>
<td><h3>Millencollin</h3></td>
<td><h3>Göteborg</h3></td>
<td><h3>StickyFingers</h3></td>
</tr>
<tr>
<td width="60px"><h3>2009-04-18</h3></td>
<td><h3>Nightwish</h3></td>
<td><h3>Stockholm</h3></td>
<td><h3>Globen</h3></td>
</tr>
<tr>
<td width="60px"><h3>2009-04-28</h3></td>
<td><h3>Ebba Gold</h3></td>
<td><h3>Falun</h3></td>
<td><h3>Stora Torget</h3></td>
</tr>
</table>
Om man kan nu säga att den är "korrekt", att köra 4st h3 taggar känns extremt onödigt, men du får även komma ihåg att header element skapar en margin/padding by default i de flesta webbläsare.
S SoulGod Medlem sedan aug. 2005 1 200 inlägg H-vete.. jag trodde jag redan ändrat det .. men hade bara tagit bort margin & paddingen på h1 & h2 ..
Det förklarar varför den såg olika ut i olika webläsare!
Tack :)
Mitt tips är att inte använda h3 tagg för det du försöker visa där
hade hellre haft (om något)
<h3>Gig</h3>
<table width="260px">
<tr>
<td width="60px">2009-04-08</td>
<td>Millencollin</td>
<td>Göteborg</td>
<td>StickyFingers</td>
</tr>
<tr>
<td width="60px">2009-04-18</td>
<td>Nightwish</td>
<td>Stockholm</td>
<td>Globen</td>
</tr>
<tr>
<td width="60px">2009-04-28</td>
<td>Ebba Gold</td>
<td>Falun</td>
<td>Stora Torget</td>
</tr>
</table>
och satt en klass på tabellen för att "koda" om td elementen för att färgas eller vad du vill göra.