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

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

给表格添加 样式:

table {

table-layout:fixed;

}

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

table td{

     overflow: hidden;

     text-overflow:ellipsis;

     white-space: nowrap;

}

效果如下:

Bootstrap Table 单元格内容过长显示问题_第1张图片

 

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

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

解决办法:

给表格添加 样式 修改成

table {

table-layout : automatic;

}

Bootstrap Table 单元格内容过长显示问题_第2张图片

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

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

table td{

max-width: 58px;

     overflow: hidden;

     text-overflow:ellipsis;

     white-space: nowrap;

}

Bootstrap Table 单元格内容过长显示问题_第3张图片

最终效果就达到了。

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

table td:hover {

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

}

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

Bootstrap Table 单元格内容过长显示问题_第4张图片

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

table td{
    max-width: 58px;
}

Bootstrap Table 单元格内容过长显示问题_第5张图片

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

 

 

CSS 样式说明:

overflow:

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

white-space:

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

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

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

 

 

 

 

你可能感兴趣的:(CSS)