我想text-overflow在表格单元格中使用CSS,这样,如果文本太长而无法放在一行上,它将用省略号进行剪切,而不是换成多行。这可能吗?
text-overflow
我尝试了这个:
td { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
但是,white-space:nowrap似乎使文本(及其单元格)不断向右扩展,从而使表格的总宽度超出了其容器的宽度。但是,如果没有它,文本在碰到单元格的边缘时会继续换行。
white-space:nowrap
要在表格单元溢出时用省略号剪切文本,您需要max-width在每个td类上设置CSS属性,以使溢出起作用。不需要额外的布局div
max-width
td
td { max-width: 100px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
对于响应式布局;使用max-widthCSS属性指定列的有效最小宽度,或仅max-width:0;用于无限的灵活性。此外,包含表将需要特定的宽度,通常为width: 100%;,列的宽度通常设置为总宽度的百分比
max-width:0;
width: 100%;
table { width: 100%; } td { max-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } td.columnA { width: 30%; } td.columnB { width: 70%; }
历史记录:对于IE 9(或更低版本),您需要在HTML中添加它,以解决特定于IE的呈现问题
<!--[if IE]> <style> table { table-layout: fixed; width: 100px; } </style> <![endif]-->