Je travaille sur une application rapide et sale qui implique plusieurs tables à une seule colonne affichées horizontalement dans une table externe.Affichage CSS: inline/none avec tables fonctionne avec Firefox mais pas Chrome ou Safari
|-------------------------------------------|
| outer table |
|-------------------------------------------|
| --------- --------- --------- |
| | table 1| |table 2| |table 3| |
| --------- --------- --------- |
| | row 1 | | row 1 | | row 1 | |
| --------- --------- --------- |
| ... |
| --------- --------- --------- |
| | row n | | row n | | row n | |
| --------- --------- --------- |
| |
|-------------------------------------------|
--------- ---------
|SHOW #2| |SHOW #3|
--------- ---------
Je sais que cela pourrait être fait en utilisant des tables sans css, mais je ne suis pas assez habile et cela n'a pas besoin d'être élégant. Au début, seule la première table est affichée. En cliquant sur les boutons, l'affichage passe de "none" à "inline" (j'ai aussi essayé "block") de # 2 et # 3. Dans cet exemple, je définis le style de # 2 dans un DIV autour de la table et dans # 3 dans un TD autour de la table. Les deux méthodes fonctionnent dans Firefox 22.0 mais pas dans Chrome 27.0 ou Safari 5.0 (tous sur Mac). Y a-t-il une solution utilisant des tables? Ou, si vous souhaitez concevoir la feuille de style, qui fonctionne trop :-)
<html>
<body>
<table id = "main" border=0 cellspacing=20>
<tr>
<td>
<table id = "tbl1" border=0>
<tr><td> table #1, row #1 </td></tr>
<tr><td> table #1, row #2 </td></tr>
</table>
</td>
<td>
<!-- Hide the table with a hidden DIV -->
<div id = "tbl2" style="display:none">
<table border=0>
<tr><td> table #2, row #1 </td></tr>
<tr><td> table #2, row #2 </td></tr>
</table>
</div>
</td>
<!-- Hide the table with a hidden TD -->
<td id = "tbl3" style="display:none">
<table border=0>
<tr><td> table #3, row #1 </td></tr>
<tr><td> table #3, row #2 </td></tr>
</table>
</td>
</tr>
</table>
<br>
<input type=button value ='show table #2' onclick='document.getElementById("tbl2").style="display:inline"'>
<input type=button value ='show table #3' onclick='document.getElementById("tbl3").style="display:inline"'>
<br>
<br>
<input type=button value ='hide table #2' onclick='document.getElementById("tbl2").style="display:none"'>
<input type=button value ='hide table #3' onclick='document.getElementById("tbl3").style="display:none"'>
</body>
</html>
'style =" display: table-cell; "' travaillé dans tous les navigateurs ici (Windows). –
fait simple exemple http://jsfiddle.net/insanebits/beCML/ – insanebits