前端笔记,table标签中td宽度不受控制的坑

    xiaoxiao2022-07-13  161

    问题发现

    在table标签中,td的宽度设置好后,是没有用的,因为table是一个整体,他的td宽度是由其中一个最长td宽度决定的,

    原因是浏览器默认情况下,如果有一个单词很长,导致一行剩下的空间放不下,则浏览器会把这个单词挪到下一行去。但是如果新行还是放不下,则会溢出,就会变成下面的样子,

    如图所示

     

    问题解决

    这时候只要在table标签上加

    word-wrap: break-word;

    word-break: break-all;

    之后再设置百分比宽度就可以生效了

    如图所示

     

    问题分析

    word-wrap: break-word;         会先另起一行,新的行放不到再把单词断了

    word-break: break-all;             他不会去新起一行,而是直接在后面跟着,如果放不下,则会强制把单词折断

     

    举个简单的例子

    I am a shy boyyyyyyyyyyyyyyyyyyyyyyyyyyyyy

    如果用word-wrap: break-word;则会变成

    I am a shy 

    boyyyyyyyyyyyyyyyyyyyyyyyyyyyyy

    如果用word-break: break-all;则会变成

    I am a shy boyyyy

    yyyyyyyyyyyyyyyyyyyyyyyyy


    参考文章:

    https://blog.csdn.net/u013216667/article/details/80921364

    https://www.cnblogs.com/xiayu25/p/6081592.html

    感谢原作者的分享,让技术人能够更快的解决问题

    最新回复(0)