• css中设置table中的td内容自动换行


    word-break:break-all和word-wrap:break-word都是能使其容器如DIV的内容自动换行

    它们的区别就在于:

    1,word-break:break-all 例如div宽200px,它的内容就会到200px自动换行,如果该行末端有个英文单词很长(congratulation等),它会把单词截断,变成该行末端为conra(congratulation的前端部分),下一行为tulation(conguatulation)的后端部分了。

    2,word-wrap:break-word 例子与上面一样,但区别就是它会把congratulation整个单词看成一个整体,如果该行末端宽度不够显示整个单词,它会自动把整个单词放到下一行,而不会把单词截断掉的。

    3,word-break;break-all 支持版本:IE5以上 该行为与亚洲语言的 normal 相同。也允许非亚洲语言文本行的任意字内断开。该值适合包含一些非亚洲文本的亚洲文本。 WORD-WRAP:break-word 支持版本:IE5.5以上 内容将在边界内换行。如果需要,词内换行( word-break )也将发生。表格自动换行,避免撑开。 word-break : normal | break-all | keep-all 参数: normal : 依照亚洲语言和非亚洲语言的文本规则,允许在字内换行 break-all : 该行为与亚洲语言的normal相同。也允许非亚洲语言文本行的任意字内断开。该值适合包含一些非亚洲文本的亚洲文本 keep-all : 与所有非亚洲语言的normal相同。对于中文,韩文,日文,不允许字断开。适合包含少量亚洲文本的非亚洲文本 语法: word-wrap : normal | break-word 参数: normal : 允许内容顶开指定的容器边界 break-word : 内容将在边界内换行。如果需要,词内换行(word-break)也行发生说明:设置或检索当当前行超过指定容器的边界时是否断开转行。

    对应的脚本特性为wordWrap。请参阅我编写的其他书目。 语法: table-layout : auto | fixed 参数: auto : 默认的自动算法。布局将基于各单元格的内容。表格在每一单元格读取计算之后才会显示出来。速度很慢 fixed : 固定布局的算法。在这算法中,水平布局是仅仅基于表格的宽度,表格边框的宽度,单元格间距,列的宽度,而和表格内容无关说明:设置或检索表格的布局算法。对应的脚本特性为tableLayout。

    建议:word-break 用3C检测会显示问题的,导致百度快照也会出问题-这个属性OPERA FIREFOX 浏览器也不支持 word-break属性可以用white-space:normal;来代替,这样在FireFox和IE下就都能正确换行,而且要注意,单词间的空格不能用 来代替,不然不能正确换行。
    --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

    table里表格固定大小并且内容自动换行

    给table 加上

    table-layout:fixed;
    word-break:break-all;
    word-wrap:break-word;
    border-collapse:collapse;
    margin:0;
    padding:0;

    css属性,并且td和table的width都要指定,就能解决ie7,8,firefox兼容问题。

    其中,table-layout:fixed;固定表格大小,不被内容胀开

    关于文字超出截断问题,这个问题其实挺常见和基础的问题。
    屏幕的宽度是有限的,而文字的长度(特别是商品名称的长度)是不固定的,而且掺杂这英文和符合等,当文字长度超过设定的宽度的时候怎么办?
    1,js或者后台程序截取。
    优点:兼容性好,没有其他异常情况出现;
    缺点:不同的位置需要不同的处理。
    2:直接overflow:hidden;
    优点:很黄很暴力,效果直接;
    缺点:最后一个字很容易截掉一半;
    3.text-overflow: ellipsis
    优点:在截断后加“…”,现在各个浏览器已经支持;
    缺点:只支持一行,多行的无法实现;
    4:word-wrap:break-word;word-break:break-all;overflow:hidden;height:24px;line-height:22px
    优点:
    这个是我要说的重点。
    word-wrap : normal | break-word
    取值:
    normal:
    控制连续文本换行。
    break-word:
    内容将在边界内换行。如果需要,词内换行(word-break)也会发生。
    说明:
    设置或检索当前行超过指定容器的边界时是否断开转行。
    word-wrap这个火狐谷歌的最新版是支持的。

    word-break : normal | break-all | keep-all
    参数:
    normal :  依照亚洲语言和非亚洲语言的文本规则,允许在字内换行
    break-all :  该行为与亚洲语言的normal相同。也允许非亚洲语言文本行的任意字内断开。该值适合包含一些非亚洲文本的亚洲文本
    keep-all :  与所有非亚洲语言的normal相同。对于中文,韩文,日文,不允许字断开。适合包含少量亚洲文本的非亚洲文本

    说明:
    设置或检索对象内文本的字内换行行为。尤其在出现多种语言时。
    对于中文,应该使用break-all 。
    word-break IE系是支持的。

    这个两个的作用是相同的,但两个都写是为了兼容各浏览器。其原理就是当超出容器边界的时候文字断行,而超出高度后隐藏,就不会出现“2”中截掉最后一个字一半的情况,而且支持多行。

    缺点:只有火狐下有个bug,当中文和英文同时存在,而且当连续英文字过长时,英文字会集体换行,结果如下:
    电脑
    ssssssssssssssssssssssssssssss
    解决办法是js处理下连续的英文字。
    但是这情况是较极端的情况,可以容忍。

    -------------------------------------------------------------------------------------------------

    在前端table制作中,由于使用了一些插件导致table无法自动换行,智能手动为<td>标签添加换行样式。
    表格换行代码:
    td{
    white-space:pre-line;word-wrap: break-word;    word-break: break-all;
    }

    white-space:pre-line;  //合并空白符序列,但是保留换行符
    word-wrap: break-word; //在长单词或+URL+地址内部进行换行
    word-break:break-all; //允许在单词内换行
  • 相关阅读:
    毫秒倒计时小Demo
    css3 翻转
    canvas
    html5
    css3
    一些免费的svn空间(SVN代码托管)
    Xcode 6制作动态及静态Framework
    ios 动态执行的代码
    ios nsarray对象问题
    iOS xcode 编译选项 architecture(cup架构问题)
  • 原文地址:https://www.cnblogs.com/yuer20180726/p/11132097.html
Copyright © 2020-2023  润新知