Javascript "Table Width" Is Changing "Tbody Width" -
i made javascript change many tables width according amount of text inside each tables.
but problem javascript changing width of tbody (saw in browser inspect element) not table width, that's why there unnecessary white-space (red color) after the table (i think because of bad coding or while loop), please see fiddle , scroll right: http://jsfiddle.net/p9edr8e9/1/ mistake , how change width of whole table?
thanks!
javascript:
var table = document.getelementsbyclassname("tabwid"); (var = 0; < table.length; i++) { var j = 0, row; tabwid = table[i].offsetwidth; row = table[i].rows; while (row[j++]) { var hei = row.offsetheight; while (tabwid < 4000) { tabwid += 500; table[i].style.width = tabwid + 'px'; if (row.offsetheight == hei) { table[i].style.width = tabwid - 500 + 'px'; break; } } } }
css:
.table{ overflow-x:auto; line-height:1.4em;} table{ border-collapse:collapse; display:block; background:#ffaaaa; } tbody{ background:#aaffaa; } th{ text-align:center; vertical-align:top; background:#222; color:#eee; padding:16px 8px; font-weight:normal; } td{ padding:8px; border:1px solid #aaa; }
html:
<div class="table"> <table class="tabwid"> <tbody> <tr> <th>hhh hhh hhh hhh</th> <th>hhh hhh hhh hhh</th> <th>hhh hhh hhh hhh</th> <th>hhh hhh hhh hhh</th> <th>hhh hhh hhh hhh</th> <th>hhh hhh hhh hhh</th> <th>hhh hhh hhh hhh</th> <th>hhh hhh hhh hhh</th> <th>hhh hhh hhh hhh</th> <th>hhh hhh hhh hhh</th> </tr> <tr> <td>aaa aaa aaa aaa</td> <td>aaa aaa aaa aaa</td> <td>aaa aaa aaa aaa</td> <td>aaa aaa aaa aaa</td> <td>aaa aaa aaa aaa</td> <td>aaa aaa aaa aaa</td> <td>aaa aaa aaa aaa</td> <td>aaa aaa aaa aaa</td> <td>aaa aaa aaa aaa</td> <td>aaa aaa aaa aaa</td> </tr> <tr> <td>bbb bbb bbb bbb</td> <td>bbb bbb bbb bbb</td> <td>bbb bbb bbb bbb</td> <td>bbb bbb bbb bbb</td> <td>bbb bbb bbb bbb</td> <td>bbb bbb bbb bbb</td> <td>bbb bbb bbb bbb</td> <td>bbb bbb bbb bbb</td> <td>bbb bbb bbb bbb</td> <td>bbb bbb bbb bbb</td> </tr> <tr> <td>ccc ccc ccc ccc</td> <td>ccc ccc ccc ccc</td> <td>ccc ccc ccc ccc</td> <td>ccc ccc ccc ccc</td> <td>ccc ccc ccc ccc</td> <td>ccc ccc ccc ccc</td> <td>ccc ccc ccc ccc</td> <td>ccc ccc ccc ccc</td> <td>ccc ccc ccc ccc</td> <td>ccc ccc ccc ccc</td> </tr> <tr> <td>ddd ddd ddd ddd</td> <td>ddd ddd ddd ddd</td> <td>ddd ddd ddd ddd</td> <td>ddd ddd ddd ddd</td> <td>ddd ddd ddd ddd</td> <td>ddd ddd ddd ddd</td> <td>ddd ddd ddd ddd</td> <td>ddd ddd ddd ddd</td> <td>ddd ddd ddd ddd</td> <td>ddd ddd ddd ddd</td> </tr> </tbody> </table> </div>
table{ border-collapse:collapse; display:block; background:#ffaaaa; }
please remove display: block;
assignment display table is: table. ar going fine.
Comments
Post a Comment