您的位置:首页 > Web前端 > CSS

解决表格里面使用text-overflow后依旧不能隐藏超出的文本

2013-06-10 09:18 393 查看
        在w3cschool中css3中有个文本相关的属性text-overflow,当把它设为ellipsis时文本溢出内容就能显示为省略标记,而设为clip时就能把文本溢出的部分裁切掉,当然,前提是设置好两个属性,那就是white-space:nowrap(强制文本在一行内显示)及overflow:hidden(溢出内容为隐藏),也就是要同时有
{

text-overflow:ellipsis或clip;

 white-space:nowrap; 

overflow:hidden;

}

因为之前有用过不少次这个属性,而且用得也都很顺利,所以最近在弄一些table的时候遇到了td内的内容太多而出现换行从而影响整体的美观的问题,所以我想把文本不换行而且让超出的文本能显示为省略号,于是我就很自然的就去用了上面那三属性并且也为td设置了长度和宽度,结果神了奇,一直没把超出的文本内容给换成省略号,尝试排除了各种我觉得有可能的影响后依旧不能解决,于是我只好去google一下,后来终于找到了原因,就是要在table的样式里定义一个属性 table-layout:fixed,综上,要想解决表格里面使用text-overflow后依旧不能隐藏超出的文本的问题,就必须完整的使用下面这些属性
td{

text-overflow:ellipsis或clip; 

white-space:nowrap; 

overflow:hidden;

width:**px;

}

table{

table-layout:fixed;

}

还有如果想鼠标移动上去时显示被隐藏的文本内容,还可以设置

td:hover

{

text-overflow:inherit;

overflow:visible;

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息