ugrás a tartalomhoz

Táblázat cella probléma.

C_hris · 2007. Már. 20. (K), 14.00
Sziasztok!

Adott a következő nem túl bonyolult kód, de valamiért Firefox alatt hibásan jelennek meg a cellák ha a Nyit linkre kattintok, valamint több kattintás után üres hely jelenik meg alatta. Exporerben normálisan megy, mi lehet a probléma?
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">  
  2. <html xmlns="http://www.w3.org/1999/xhtml">  
  3. <head>  
  4. <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />  
  5. <title>Untitled Document</title>  
  6. </head>  
  7.   
  8. <body>  
  9.   
  10.             <table border="1" cellpadding="0" cellspacing="0" style="width:300px;">  
  11.   
  12.               <tbody>  
  13.                 <tr>  
  14.                   <td>1</td>  
  15.                   <td>2</td>  
  16.                   <td><a href="#" onclick="Nyit();return false;">Nyit</a></td>  
  17.                   <td>3</td>  
  18.                   <td>4</td>  
  19.                 </tr>  
  20.                 <tr style="display:none;">  
  21.                   <td colspan="2">123</td>  
  22.                   <td colspan="3" class="tdet" id="termcont">456</td>  
  23.                 </tr>  
  24.                   
  25.             </tbody>  
  26.             </table>  
  27.                           
  28. <script type="text/javascript">  
  29.   
  30. function Nyit()  
  31. {  
  32. containertd=document.getElementById('termcont');  
  33.   
  34.   
  35.   if(containertd.parentNode.style.display=='block')  containertd.parentNode.style.display='none';  
  36.   else containertd.parentNode.style.display='block'  
  37.       
  38.   
  39. }  
  40.   
  41. </script>  
  42.   
  43. </body>  
  44. </html>  
 
1

táblázat != blokk

vbence · 2007. Már. 20. (K), 14.11
A táblázat sorának a szabvány szerint ( http://www.w3.org/TR/CSS21/tables.html#q2 ) table-row a display stílusa. Ha jól tudom az explórernek gondjai vannak ezzel. Itt egy alapos összehasolítás: http://www.quirksmode.org/css/display.html
2

igazad van

C_hris · 2007. Már. 20. (K), 14.22
köszi, ez volt a probléma csak az ie nem szereti a 'table-row'-t
ezért így kellett módosítani a kódot:
  1. function Nyit()  
  2. {  
  3. containertd=document.getElementById('termcont');  
  4.   
  5.   if(containertd.parentNode.style.display=='table-row' || containertd.parentNode.style.display=='block')    
  6.     containertd.parentNode.style.display='none';  
  7.   else   
  8.     {  
  9.         try{ containertd.parentNode.style.display='table-row'; }  
  10.         catch(ex) { containertd.parentNode.style.display='block'; }  
  11.      }      
  12. }  
3

display reset

attlad · 2007. Már. 20. (K), 15.55
Az üres érték visszaállítja alapértelmezettre:
  1. function Nyit()  
  2. {  
  3.   var containertd = document.getElementById('termcont');  
  4.   containertd.parentNode.style.display = containertd.parentNode.style.display == 'none' ? '' : 'none';  
  5. }