HTML表格:根据Chrome中的TBODY而定的AD宽度
经过一些测试,我发现Chrome并不像Opera那样根据TBODY元素计算THEAD列的宽度。有没有办法避免在thead中指定这一点?例如:HTML表格:根据Chrome中的TBODY而定的AD宽度,html,css,html-table,cross-browser,width,Html,Css,Html Table,Cross Browser,Width,经过一些测试,我发现Chrome并不像Opera那样根据TBODY元素计算THEAD列的宽度。有没有办法避免在thead中指定这一点?例如: <!DOCTYPE html> <html> <head> <style type="text/css" media="all"> table{ width:800px; border:1px solid #CCCCCC; table-layou
<!DOCTYPE html>
<html>
<head>
<style type="text/css" media="all">
table{
width:800px;
border:1px solid #CCCCCC;
table-layout: fixed;
border-spacing:0px;
box-sizing: border-box;
}
table td.option{
width:100px;
}
table td {
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
border:1px solid #EEEEEE;
}
table td.active{
text-align:center;
width:100px;
}
td.thead{
/* something that makes that width: is depending on the total width of the tbody elements */
}
table td.nonfixed{
width:100%;
}
</style>
<title>Untitled</title>
</head>
<body>
<table>
<thead>
<tr>
<td class="thead">Name</td>
<td class="thead">Description</td>
<td class="thead">Active</td>
<td class="thead" colspan="2">Options</td>
</tr>
</thead>
<tfoot>
<tr>
<td colspan="100"><a href="">+ Add new row</a></td>
</tr>
</tfoot>
<tbody>
<tr>
<td class="nonfixed">[Name 1]</td>
<td class="nonfixed">[Description 1]</td>
<td class="active">[X]</td>
<td class="option">Edit</td>
<td class="option">Delete</td>
</tr>
<tr>
<td class="nonfixed">[Name 2]</td>
<td class="nonfixed">[Description 2]</td>
<td class="active">[0]</td>
<td class="option">Edit</td>
<td class="option">Delete</td>
</tr>
</tbody>
</table>
</body>
</html>
桌子{
宽度:800px;
边框:1px实心#中交;
表布局:固定;
边界间距:0px;
框大小:边框框;
}
表td.1选项{
宽度:100px;
}
表td{
溢出:隐藏;
空白:nowrap;
文本溢出:省略号;
边框:1px实心#EEEEEE;
}
表td.active{
文本对齐:居中;
宽度:100px;
}
td.thead{
/*使宽度变宽的因素:取决于tbody元素的总宽度*/
}
表td.nonfixed{
宽度:100%;
}
无标题
名称
描述
活跃的
选择权
[姓名1]
[说明1]
[X]
编辑
删除
[姓名2]
[说明2]
[0]
编辑
删除
通过添加
元素,问题得以解决。Chrome使用第一行(tr或colgroup)确定td宽度。此解决方案在旧版本的IE中遇到一些问题,IE不支持带有百分比的td宽度