Bootstrap – 如何为<td>设置固定宽度?

简单的scheme:

<tr class="something"> <td>A</td> <td>B</td> <td>C</td> <td>D</td> </tr> 

我需要为<td>设置一个固定的宽度。 我试过了:

 tr.something { td { width: 90px; } } 

 td.something { width: 90px; } 

对于

 <td class="something">B</td> 

乃至

 <td style="width: 90px;">B</td> 

但是<td>的宽度仍然相同。

对于Bootstrap 3.0:

使用twitter引导3使用: class="col-md-*"其中*是宽度的列数。

 <tr class="something"> <td class="col-md-2">A</td> <td class="col-md-3">B</td> <td class="col-md-6">C</td> <td class="col-md-1">D</td> </tr> 

对于Bootstrap 2.0:

使用twitter引导2使用: class="span*"其中*是宽度的列数。

 <tr class="something"> <td class="span2">A</td> <td class="span3">B</td> <td class="span6">C</td> <td class="span1">D</td> </tr> 

**如果<th>元素设置了宽度,而不是<td>元素。

我有同样的问题,我做了表固定,然后指定我的TD宽度。 如果你有,你也可以做到这一点。

 table { table-layout: fixed; word-wrap: break-word; } 

模板:

 <td style="width:10%">content</td> 

请使用CSS来构build任何布局。

而不是将col-md-*类应用于行中的每个td ,您可以创build一个colgroup并将这些类应用于col标签。

  <table class="table table-striped"> <colgroup> <col class="col-md-4"> <col class="col-md-7"> </colgroup> <tbody> <tr> <td>Title</td> <td>Long Value</td> </tr> </tbody> </table> 

在这里演示

如果您在<table class="table">使用<table class="table"> ,Bootstrap的表类为表添加了100%的宽度。 您需要将宽度更改为自动。

另外,如果表格的第一行是标题行,则可能需要将宽度添加到th而不是td。

在我的情况下,我能够通过使用min-width: 100px而不是width: 100pxthtd来解决这个问题。

 .table td, .table th { min-width: 100px; } 

希望这个人会帮助别人:

 <table class="table"> <thead> <tr> <th style="width: 30%">Col 1</th> <th style="width: 20%">Col 2</th> <th style="width: 10%">Col 3</th> <th style="width: 30%">Col 4</th> <th style="width: 10%">Col 5</th> </tr> </thead> <tbody> <tr> <td>Val 1</td> <td>Val 2</td> <td>Val 3</td> <td>Val 4</td> <td>Val 5</td> </tr> </tbody> </table> 

https://github.com/twbs/bootstrap/issues/863

尝试这个 –

 <style> table { table-layout: fixed; } table th, table td { overflow: hidden; } </style> 

这个组合的解决scheme为我工作,我想同等宽度的列

 <style type="text/css"> table { table-layout: fixed; word-wrap: break-word; } table th, table td { overflow: hidden; } </style> 

结果: –

在这里输入图像描述

很难判断没有页面的HTML或CSS的其余部分的上下文。 可能有几个原因,为什么你的CSS规则不会影响td元素。

你有没有尝试过更具体的CSSselect器,如

 tr.somethingontrlevel td.something { width: 90px; } 

这样可以避免你的CSS被bootstrap css中的更具体的规则覆盖。

(顺便说一句,在你的内联CSS样本的样式属性,你拼错的宽度 – 这可以解释为什么这个尝试失败!)

好吧,我只是想出了问题在哪里 – Bootstrap被设置为select元素的默认值width ,因此,解决scheme是:

 tr. something { td { select { width: 90px; } } } 

别的什么都行不通。

我一直在努力解决这个问题,以防万一当有人犯了同样的愚蠢的错误,我在… <td>我有元素与white-space:pre风格应用。 这使得我所有的表/ tr / td技巧都被抛弃了。 当我删除这种风格,突然所有我的文本格式很好的td

所以,总是检查主容器(如tabletd ),但也总是检查,如果你不取消你的美丽代码更深的地方:)