时间:2021-05-08
在对设置表格设置table-layer:fixed样式后,发现表格中有一行合并过,其它没有合并的行的列宽会平均化,对列宽的设置会失效。如果把表格的合并行去掉,又能正常显示。
原因:table-layout: fixed 的表格,各列宽度由第一行决定,后面指定的宽度会被忽略。你第一行合并了,所以各列宽度均分了。
解决方法一:
在tbody前加
复制代码代码如下:
<col style="width: 60%" />
<col style="width: 20%" />
<col style="width: 20%" />
解决方法二:
设置一个隐藏的行来规定宽度:
复制代码代码如下:
<table style="table-layout:fixed;width:200px" border="1" cellspacing="1" cellpadding="1">
<tr style="display:none">
<td style="width:100px"></td>
<td style="width:80px"></td>
<td style="width:20px"></td>
</tr>
<tr>
<td>1</td>
<td colspan="2">2</td>
</tr>
<tr>
<td>1.1</td>
<td>2.1</td>
<td>2.2</td>
</tr>
</table>
这个方法,在IE6,IE7,IE8中都可以正确地显示,但在非IE中,是没起作用的。下面给出另外一种方法:
复制代码代码如下:
<style>
td{border:1px solid red;}
</style>
<table style="table-layout:fixed;width:200px" border="0" cellspacing="1" cellpadding="1">
<tr style="height:0;">
<th style="width:100px"></th>
<th style="width:80px"></th>
<th style="width:20px"></th>
</tr>
<tr>
<td>1</td>
<td colspan="2">2</td>
</tr>
<tr>
<td>1.1</td>
<td>2.1</td>
<td>2.2</td>
</tr>
</table>
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
1、在编辑列里面,直接就有设置列宽度的!如果你不想单元格的内容把单元格撑大,那么就加一个样式table{table-layout:fixed},意思就是每列都固
前言:今天来和大家详细说一下table-layout属性的用法。table{table-layout:fixed;}***本文关键
word-break:keep-all;字体不断开table-layout:fixed;列宽由表格宽度和列宽度设定,默认由表格的内容决定列宽。white-spa
最近的做的一个小项目需要用到就百度总结一下写了下来首先设置表格的样式table-layout:"fixed"再设置表格的宽度(这步必须)最后再设置td样式的三个
设置table的style="table-layout:fixed;"然后设置td的style="word-wrap:break-word;"即可复制代码代码如