【发布时间】:2017-01-29 07:15:18
【问题描述】:
演示:http://codepen.io/anon/pen/JdWrKX?editors=110
如您所见,“.panel”中有一个响应式表格,您可以水平滚动。太好了。
但它使整个页面水平扩展,不适合窗口。 尝试在小屏幕上查看错误。
HTML:
<div id="wrap">
<nav class="navbar navbar-inverse navbar-static-top" role="navigation">
<div class="container-fluid">
<div class="navbar-header">
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a class="navbar-brand" href="">Logo</a>
</div>
<div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
<ul class="nav navbar-nav navbar-right">
<li>
<a href="">Logout</a>
</li>
</ul>
</div>
</div>
</nav>
<div class="content content-primary content-sm">
<div class="container-fluid">
<div class="row">
<div class="col-sm-8 col-sm-offset-2 col-md-6 col-md-offset-3">
<div class="panel panel-default">
<div class="panel-body">
<div class="table-responsive">
<table class="table-bordered">
<tr>
<td>
<div>a</div>
</td>
<td>b</td>
</tr>
</table>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<footer>
<nav class="navbar navbar-inverse navbar-static-top" role="navigation">
<div class="container-fluid">
<div class="navbar-header">
<a class="navbar-brand" href="">Copyright</a>
</div>
<div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
<ul class="nav navbar-nav navbar-right">
<li>
<a href="">Logout</a>
</li>
</ul>
</div>
</div>
</nav>
</footer>
</div>
CSS:
html,
body {
height: 100%;
}
#wrap {
height: 100%;
display: table;
width: 100%;
}
#wrap > nav,
footer {
display: table-row;
}
nav.navbar {
margin-bottom: 0;
}
.content-sm {
padding: 15px 0;
}
.content-primary {
background: #337ab7;
}
.content {
display: table-cell;
height: 100%;
}
td {
text-wrap: no-warp;
}
td div {
width: 900px;
}
【问题讨论】:
-
我猜
td div {width: 900px;}是问题所在。但问题是较小的视口需要哪种行为? -
@FabianMebus – 900px 旨在模拟一个包含大量内容的 td。我有可以水平滚动的大桌子,效果很好。但整体布局应保持 100% 的窗口,而不是超出范围。
-
您正在使用 .container-fluid,但您不是故意为您的子行 div 使用 .row-fluid 吗?
-
@BenoîtDaSilva – Bootstrap 3 不再使用“.row-fluid”。
-
看看this,它会删除您的 900px 并添加内容。问题是您将表格强制设置为至少 900 像素,这意味着您正在消除响应能力。
标签: html twitter-bootstrap css html-table