在我的应用程序中,我必须为数据库记录显示bootsatarp网格。由于记录数量足以在没有完整页面滚动的情况下查看,因此我使用bootstrap pre-scrollable div包装我的表,它为我提供了滚动表格的功能。但是,所有时间DIV大小都是浏览器窗口的一半。我尝试了几乎每个堆栈溢出的帖子和建议,只是它们不适合我。我也试图通过支持java脚本解决这个问题,但也失败了。
这是我的HTML代码
<div class="col-md-9">
<div class="pre-scrollable">
<table class="table table-bordered table-hover header-fixed" id="sometable">
<thead>
<tr>
<th>EMP_No</th>
<th>Name</th>
<th>Designation</th>
<th>Department</th>
<th>Type</th>
<th>#Days</th>
<th>Start Date</th>
<th>End Date</th>
<th>Half day</th>
<th>Status</th>
</tr>
</thead>
<tbody>
</tbody>
<?php //php code for print the table
?>
</div>
</div>
我在上面填充了PHP代码的结果。我不知道如何将这个DIV的高度设置为浏览器windows的固定值或完整值。下面是使用的CSS
<style>
table {
font-family: arial, sans-serif;
border-collapse: collapse;
width: 100%;
}
td, th {
border: 1px solid #dddddd;
text-align: center;
padding: 1px;
}
thead th {
text-align: center;
background-color: #3498db;
}
tr:nth-child(even) {
background-color: #dddddd;
}
</style>
答案 0 :(得分:17)
在bootstrap css文件中为.pre-scrollable div设置了max-height属性。
.pre-scrollable {
max-height: 340px;
overflow-y: scroll;
}
这可能是你问题的根源。
答案 1 :(得分:5)
为简单起见,您可以使用css视口尺寸。像这样:
<div class="pre-scrollable" style="max-height: 75vh">
<table>...</table>
</div>
其中“75vh”是可见高度的75%。
答案 2 :(得分:4)
Twitter bootstrap - Fixed layout with scrollable sidebar将有所帮助......由于链接页面上的示例将显示您需要设置div而不是表格的高度。
<style type="text/css">
body, html {
height: 100%;
overflow: hidden;
}
.navbar-inner {
height: 40px;
}
.scrollable {
height: 100%;
overflow: auto;
}
.max-height {
height: 100%;
}
.no-overflow {
overflow: hidden;
}
.pad40-top {
padding-top: 40px;
}
</style>