zoukankan      html  css  js  c++  java
  • 溢出用三个点表示在td中不好用的原因

    table布局(table-layout:fixed)

    官方定义

    tableLayout 属性用来显示表格单元格、行、列的算法规则。

    固定表格布局:

    固定表格布局与自动表格布局相比,允许浏览器更快地对表格进行布局。

    在固定表格布局中,水平布局仅取决于表格宽度、列宽度、表格边框宽度、单元格间距,而与单元格的内容无关。

    通过使用固定表格布局,用户代理在接收到第一行后就可以显示表格。

    自动表格布局:

    在自动表格布局中,列的宽度是由列单元格中没有折行的最宽的内容设定的。

    此算法有时会较慢,这是由于它需要在确定最终的布局之前访问表格中所有的内容。

    项目中的应用

    需求:td行中,文字不换行,超出的话用三个点显示

    实施:

    td{
    
    ​      overflow: hidden;
    
    ​      text-overflow: ellipsis;
    
    ​      white-space: nowrap;  
    
    ​    }
    

    结果:没有达到预期的效果

    问题分析:因为table有一个table-layout的属性,默认是automatic,列宽度由单元格内容设定。即使我们手动给td加上宽度也是不行的,td宽度还是会随着内容进行变化,要将table-layout属性设置为fixed,即列宽由表格宽度和列宽度设定。

    总结:文字溢出隐藏应用三个点代替时,要有宽度,(不然无法判断溢出)table中应加table-layout:fixed来控制宽度。

    解决过程:之前不知道这个table-layout属性时,给td里加了p标签发现也达到了预期效果,由此分析出td设置的宽度失效了,最终发现了table-layout:fixed属性。

  • 相关阅读:
    Python电影投票系统
    Python打印一个等边三角形
    打印正直角三角形
    MySQL指令
    MySQL安装 8.0.15版本
    局部变量 全局变量
    目录
    格式化输出
    转义字符
    ffmpeg 从内存中读取数据(或将数据输出到内存)
  • 原文地址:https://www.cnblogs.com/wszzj/p/13984272.html
Copyright © 2011-2022 走看看