Bootstrap Table 单元格内容过长显示问题

遇到这个问题:网上查了很多方法,单元格内容显示过长,通过下面的样式控制,可以实现精简显示(文末奉上,样式说明)

给表格添加 样式:

table {

table-layout:fixed;

}

给每个单元格添加下面的样式:

table td{

     overflow: hidden;

     text-overflow:ellipsis;

     white-space: nowrap;

}

效果如下:

 

但是:再这样操作之后我遇到了新的问题;表格表头很长的时候,就有新的问题。

表格错位,内容显示不清。

解决办法:

给表格添加 样式 修改成

table {

table-layout : automatic;

}

但是,列宽度根据内容长短不一,单元格内容没有精简显示,还要做下面一步

给单元格添加的样式:增加一个宽度

table td{

max-width: 58px;

     overflow: hidden;

     text-overflow:ellipsis;

     white-space: nowrap;

}

最终效果就达到了。

隐藏了,自然要要显示,可以在单元格上添加一个事件 hover

table td:hover {

overflow: auto;
white-space: pre-wrap;

}

即可实现鼠标移上就可以友好显示了。

(还可以加上一个单元格点击事件,去掉添加的样式,直接一行完全显示)

table td{
    max-width: 58px;
}

ps:目前尝试的连接符为 中文顿号(、),其他连接符不确定。欢迎留言讨论。

 

 

CSS 样式说明:

overflow:

visible默认值。内容不会被修剪,会呈现在元素框之外。
hidden内容会被修剪,并且其余内容是不可见的。
scroll内容会被修剪,但是浏览器会显示滚动条以便查看其余的内容。
auto如果内容被修剪,则浏览器会显示滚动条以便查看其余的内容。
inherit规定应该从父元素继承 overflow 属性的值。

white-space:

normal默认。空白会被浏览器忽略。
pre空白会被浏览器保留。其行为方式类似 HTML 中的 <pre> 标签。
nowrap文本不会换行,文本会在在同一行上继续,直到遇到 <br> 标签为止。
pre-wrap保留空白符序列,但是正常地进行换行。
pre-line合并空白符序列,但是保留换行符。
inherit规定应该从父元素继承 white-space 属性的值。
text-overflow:
clip修剪文本。
ellipsis显示省略符号来代表被修剪的文本。
string使用给定的字符串来代表被修剪的文本。

table-layout: 属性用来显示表格单元格、行、列的算法规则

automatic默认。列宽度由单元格内容设定。
fixed列宽由表格宽度和列宽度设定。
inherit规定应该从父元素继承 table-layout 属性的值。

 

 

 

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值