我有动态和静态表格单元格。我需要在动态表格单元格中创建100%高度的div。
我的解决方案很少 - 仅适用于Chrome& Firefox浏览器。在Opera& IE子div具有顶级表大小。是否有歌剧的解决方案,即没有js?
好:
坏:
更新#1 适用于Chrome,FF和Opera( Presto ):
<table class='m-table'>
<tr>
<td class='m-top-cell'>
<div class="b-subtable">
<div class="b-content"></div>
</div>
</td>
</tr>
<tr>
<td class='m-bottom-cell'></td>
</tr>
</table>
.m-table {
width: 100px;
height: 250px;
margin: 0 auto;
position: relative;
border-spacing: 0;
padding: 0;
border: 1px solid blue;
}
.m-top-cell {
height: 100%;
position: relative;
background-color: red;
}
.m-bottom-cell {
background-color: gold;
height: 200px;
}
.b-subtable {
background-color: #E76D13;
border: 1px solid #E76D13;
position: absolute;
top: 5px;
bottom: 5px;
left: 5px;
right: 5px;
}
@-moz-document url-prefix() {
.m-top-cell {
padding: 5px;
}
.b-subtable {
position: relative;
display: table;
height: 100%;
left: 0;
top: 0;
bottom: 0;
right: 0;
}
.b-subtable:after {
content: '. .';
display: block;
word-spacing: 99in;
height: 0;
overflow: hidden;
font-size: 0.13em;
line-height: 0;
}
}
.b-content {
background-color: orange;
width: 15px;
height: 15px;
position: absolute;
left: 10px;
top: 10px;
}
答案 0 :(得分:0)
这应该有效:
.m-top-cell{
/* other css properties */
/*remove height:100% */
position:relative;
}
.b-subtable{
/* other css properties */
/* remove height: 100% and display: table */
position: absolute;
top: 5px;
bottom: 5px;
left: 5px;
right: 5px;
}
并检查您的link
标记符号
<link rel="stylesheet" href="table.css" type="text/css" />