我有一个面板,里面有一个标题和一个表格。如果表宽度可以根据我们传递的数据动态增加。所以我将面板溢出设置为自动。现在我想在溢出的情况下调整标题的宽度,即它应该占用100%的宽度。 Jsfiddle - http://jsfiddle.net/DeoD/4z4a3fwy/
<root>
<Maintag>
<Change_type>NQ</Change_type>
<Name>Atlas</Name>
<Test>ATLS</Test>
<Other>NYSE</Other>
<Scheduled_E/></Maintag></root>
答案 0 :(得分:1)
我刚刚在代码中做了一些更改。我认为这将是有用的,不需要使用jQuery
<div class="resultPanel">
<table class="table">
<thead>
<tr>
<th colspan="3"><h3 class="title">Title</h3></th>
</tr>
</thead>
<tbody>
<tr>
<td>data</td>
<td>data</td>
<td>data</td>
</tr>
<tr>
<td>data</td>
<td>data</td>
<td>data</td>
</tr>
</tbody>
</table>
</div>
.resultPanel {
overflow: auto;
padding-top: 40px;
padding-left: 10px;
width: 500px;
}
.title {
background-color: gray;
line-height: 40px;
padding-left: 10px;
margin-top: 0px;
margin-bottom: 20px;
text-align: left;
}
.table{
width:700px;
}
我把h3放在
中并且对于h3,在css中将宽度设置为100%
答案 1 :(得分:0)
您可以将标题的宽度设置为与表格的宽度相同,如下所示
$(document).ready(function(){
$('.title').css('width',$('.table').width());
});
答案 2 :(得分:0)
你只需要创建一个检查表格宽度的函数。 如果表的宽度大于.resultPanel的宽度,则将.resultPanel宽度调整为表的宽度:
function adjustResultPanel(){
var tableWidth = $('.table').width();
var resultPanelWidth = $('.resultPanel').width();
if ( tableWidth > resultPanelWidth ){
$('.resultPanel').width(tableWidth)
}
}
$(function(){
adjustResultPanel();
});
&#13;
您的更新小提琴:http://jsfiddle.net/4z4a3fwy/19/
答案 3 :(得分:0)
将标题宽度设置为100%
.title {
background-color: gray;
line-height: 40px;
padding-left: 10px;
margin-top: 0px;
width:100%;
margin-bottom: 20px;
}
答案 4 :(得分:0)
最简单的解决方案是将您的表(和h3)放在一个带有display: inline-block
<div class="resultPanel">
<div style='display: inline-block'>
<h3 class="title">Title</h3>
<table class="table">
<tr>
<td>data</td>
<td>data</td>
<td>data</td>
</tr>
<tr>
<td>data</td>
<td>data</td>
<td>data</td>
</tr>
</table>
</div>
</div>