Zol*_*ási 7 html css twitter-bootstrap
我正在使用bootstrap,并且想要创建一个简单的HTML table,在最后一列中我有一个2按钮组和一个单独的按钮.我希望这最后一个单元始终将这3个按钮保持在一行中,所以我添加了text-nowrapbootstrap类(这很简单white-space: nowrap).
如果其他单元格的内容足够长,则最后一个单元格的内容将水平溢出,我不明白为什么.我希望表的其余部分会缩小,以便为非包装单元腾出空间.
这是一个重现问题的演示:bootply
这是标记.
<div style="width: 500px">
<table class="table table-striped">
<tbody><tr>
<td>Test text</td>
<td class="text-nowrap">
<div class="btn-group">
<button class="btn btn-default"><span>A</span></button>
<button class="btn btn-warning"><span>B</span></button>
</div>
<button class="btn btn-success"><span>C</span></button>
</td>
</tr>
</tbody></table>
</div>
Run Code Online (Sandbox Code Playgroud)
按钮组div和单独button的都是inline-block元素,因此包装应该按预期的IMO工作.我究竟做错了什么?
也许这与bootstrap没有严格的关系.
UPDATE
原因和解决方法
btn-group会产生正确的布局,所以我开始检查它实际上是btn-group做什么的.btns btn-group是浮动的,这种浮动会导致错误的布局.clearfix类来btn-group解决问题.float: left需要bootstrap,看起来组中的按钮可以通过纯粹inline-block没有边距来对齐.我将在v4-alpha代码中检查这一点,并将此问题报告给bootstrap v3.阅读此链接的更多信息
table { table-layout:fixed; width:100%; }
Run Code Online (Sandbox Code Playgroud)
而不是使用表格布局:固定;对于你的表,你可以使用这个技巧让 DIV 始终占据 TD 的完整空间,并具有以下text-overflow: ellipsis;功能:
div { width: 0; min-width: 100%; }
Run Code Online (Sandbox Code Playgroud)
主要技巧是给宽度设置除 auto/percent 之外的其他值,并使用 100% 的最小宽度;
div { width: 0; min-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
table.myTable { width: 100%; border-collapse: collapse; }
td { border: 1px solid #000; }
td.td1 { width: 100%; min-width: 50px; }
td.td2 { width: 100px; min-width: 100px; }
td.td3 { width: 150px; min-width: 150px; }
td.td4 { width: 50%; min-width: 50px; }
td.td5 { width: 50%; min-width: 50px; }
td.td6 { width: 150px; min-width: 150px; }
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2323 次 |
| 最近记录: |