简单的方案:
<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>
的宽度还是一样的。
style="width: 1% !important;"
使宽度与列中最长的单词一样紧,这对于第一个 ID/# 列很有用。在 chrome(desktop&mobile)、opera(desktop)、IE(desktop)、edge(desktop)、firefox(desktop) 中测试
对于引导 4.0:
在 Bootstrap 4.0.0 中,您不能可靠地使用 col-*
类(在 Firefox 中有效,但在 Chrome 中无效)。您需要使用 OhadR's answer:
<tr>
<th style="width: 16.66%">Col 1</th>
<th style="width: 25%">Col 2</th>
<th style="width: 50%">Col 4</th>
<th style="width: 8.33%">Col 5</th>
</tr>
对于引导 3.0:
使用 twitter bootstrap 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>
对于引导 2.0:
使用 twitter bootstrap 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 宽度。如果你有,你也可以这样做。
模板:
请使用 CSS 来构建任何布局。
td
标记中使用class
而不是直接应用样式th
的宽度,例如:<th style="width: 25%;"></th>
这将影响其他列的宽度table-layout: fixed
。这是必需的,因为许多使用 BS4 构建的模板都将 flex 应用于所有内容,包括表格。您可以创建一个
colgroup
并将这些类应用到col
标记,而不是将col-md-*
类应用到行中的每个td
。演示here
<col class="col-md-4 col-sm-6">
在中等屏幕尺寸下的宽度为 33%,在小屏幕尺寸下为 50%)希望这个可以帮助某人:
https://github.com/twbs/bootstrap/issues/863
如果您在表上使用
<table class="table">
,则 Bootstrap 的表类会为表添加 100% 的宽度。您需要将宽度更改为自动。此外,如果表格的第一行是标题行,您可能需要将宽度添加到 th 而不是 td。
th
的 white-space 属性设置为 normal,因为它当前是 nowrap,因为这样的标头不会中断。就我而言,我能够通过对单元格
th
或td
使用min-width: 100px
而不是width: 100px
来解决该问题。对于 Bootstrap 4,您可以简单地使用类助手:
.w-25, .w-50, .w-75, .w-100, .w-auto
,因此如果您想要其他内容,例如w-10
,您需要将.w-10 { width: 10% !important; }
添加到本地化的 css 文件中。引导程序 4.0
在 Bootstrap 4.0 上,我们必须通过添加类 d-flex 将表行声明为 flex-boxes,并删除 xs、md、后缀以允许 Bootstrap 自动从视口派生它。
所以它看起来如下:
希望这对其他人有帮助!
干杯!
尝试这个 -
text-overflow: ellipsis
以确保截断文本清晰可见Bootstrap 4 和 5 有一个宽度实用程序,用于调整 html 元素宽度示例:
这个组合解决方案对我有用,我想要等宽的列
结果 :-
https://i.stack.imgur.com/L03Sy.png
在 Bootstrap 4 中使用 d-flex 而不是 row 作为“tr”
问题是“行”类比父容器占用更多宽度,这会引入问题。
好的,我刚刚发现问题出在哪里 - 在 Bootstrap 中设置为
select
元素的默认值width
,因此,解决方案是:其他任何事情都对我不起作用。
这就是我不用处理 IE 时经常做的事情
这样你就可以有一个熟悉的 12 列网格。
如果没有页面 html 或 CSS 的其余部分的上下文,很难判断。您的 CSS 规则不影响 td 元素的原因可能有很多。
您是否尝试过更具体的 CSS 选择器,例如
这是为了避免您的 CSS 被引导 css 中更具体的规则覆盖。
(顺便说一句,在您的带有样式属性的内联 CSS 示例中,您拼错了宽度 - 这可以解释为什么尝试失败了!)
我一直在为这个问题苦苦挣扎,所以以防万一有人犯了和我一样的愚蠢错误……在
<td>
内,我应用了具有white-space:pre
样式的元素。这使得我所有的 table/tr/td 技巧都被丢弃了。当我删除该样式时,突然间我的所有文本都在td
中很好地格式化了。因此,请始终检查主容器(例如
table
或td
),但也要始终检查您是否没有在更深的地方取消漂亮的代码 :)在表格中使用固定表格布局 css,并设置 td 的百分比。
在 bootstarp 4 中,您可以在表中使用
row
和col-*
,我使用它如下这些都不适合我,并且在数据表上有很多列可以使 % 或 sm 类等于引导程序上的 12 个元素布局。
我正在使用数据表 Angular 5 和 Bootstrap 4,并且表中有很多列。我的解决方案是在
TH
中添加具有特定宽度的DIV
元素。例如,对于 cols“人名”和“事件日期”,我需要一个特定的宽度,然后在 col 标题中放置一个div
,然后整个 col 宽度调整为TH
上的 div 指定的宽度:对我来说,将表格的布局设置为自动并定位特定列的
<th>
就可以了。我发现在任何行中定位<td>
也可以。如果需要,请随意添加!important
。我也遇到了这个问题,我按照这种方法来克服......所以你可以试试
<td style="min-width:120px;">B</td>
使用 .something 没有 td 或 th
固定宽度列
在引导表 4.x 中
如果您在 init 参数中创建表而不是使用 HTML。
您可以在 columns 属性中指定宽度参数:
关注公众号
不定期副业成功案例分享
想领先一步获取最新的外包任务吗?
立即订阅相似问题
HuntsBot(狩猎机器人),一站式外包任务、远程工作、产品创意分享与订阅平台,支持钉钉、飞书、企业微信、邮箱、Telegram机器人订阅。平台会以及时、稳定、可靠的技术把外包任务需求、远程工作机会、产品创意等推送给每一位订阅的用户。
平台
支持
友情链接
联系我们
在使用过程中有任何问题或建议,可以通过以下方式联系我们:
微信公众号: 火星来客
Email: huntsbot@xinbeitime.com
微信公众号
Tips