紫影基地

 找回密码
 立即注册
查看: 1098|回复: 1

CSS文字超出部分自动换行 Css中实现文字超出自动换行

[复制链接]
阅读字号:

2002

主题

2117

帖子

21万

积分

超级版主

Rank: 8Rank: 8

积分
210303
发表于 2022-10-29 09:58:46 | 显示全部楼层 |阅读模式
v2-3a6f842d405660b0c4878c1597b7014c_r.jpg

强制不换行:

p { white-space:nowrap; }
自动换行:

p { word-wrap:break-word; }
强制英文单词断行:

p { word-break:break-all; }
注意:设置强制将英文单词断行,需要将行内元素设置为块级元素。

超出显示省略号:

p{text-overflow:ellipsis;overflow:hidden;}
white-space: normal|pre|nowrap|pre-wrap|pre-line|inherit;
white-space: 属性设置如何处理元素内的空白
normal: 默认。空白会被浏览器忽略。
pre: 空白会被浏览器保留。其行为方式类似 HTML 中的 pre 标签。
nowrap: 文本不会换行,文本会在在同一行上继续,直到遇到 br 标签为止。
pre-wrap: 保留空白符序列,但是正常地进行换行。
pre-line: 合并空白符序列,但是保留换行符。
inherit: 规定应该从父元素继承 white-space 属性的值。
word-wrap: normal|break-word;
word-wrap: 属性用来标明是否允许浏览器在单词内进行断句,这是为了防止当一个字符串太长而找不到它的自然断句点时产生溢出现象。
normal: 只在允许的断字点换行(浏览器保持默认处理)
break-word: 在长单词或URL地址内部进行换行
word-break: normal|break-all|keep-all;
word-break 属性用来标明怎么样进行单词内的断句。
normal:使用浏览器默认的换行规则。
break-all:允许再单词内换行
keep-all:只能在半角空格或连字符处换行
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>菜鸟教程(runoob.com)</title>
<style>
    .word{background:#E4FFE9;width:250px;margin:50px auto;padding:20px;font-family:"microsoft yahei";}
    /* 强制不换行 */
    .nowrap{white-space:nowrap;}
    /* 允许单词内断句,首先会尝试挪到下一行,看看下一行的宽度够不够,
    不够的话就进行单词内的断句 */
    .breakword{word-wrap: break-word;}
    /* 断句时,不会把长单词挪到下一行,而是直接进行单词内的断句 */
    .breakAll{word-break:break-all;}            
    /* 超出部分显示省略号 */
    .ellipsis{text-overflow:ellipsis;overflow:hidden;}
</style>
</head>
<body>
    <div class = "word">
        <p class = "nowrap">wordwrap:breakword;absavhsafhuafdfbjhfvsalguvfaihuivfs</p>         
        <p class = "breakword">wordwrap:break-word;absavhsafhuafdfbjhfvsalguvfaihui</p>
        <p class = "breakAll">wordwrap:break-word;absavhsafhuafdfbjhfvsalguvfaihuivf</p>
        <p class = "normal">wordwrap:breakword;absavhsafhuafdfbjhfvsalguvfaihuivfsa</p>
        <p class = "ellipsis">wordwrap:breakword;absavhsafhuafdfbjhfvsalguvfaihuivfsab</p>
    </div>
</body>
</html>

回复

使用道具 举报

2002

主题

2117

帖子

21万

积分

超级版主

Rank: 8Rank: 8

积分
210303
 楼主| 发表于 2022-10-29 09:59:23 | 显示全部楼层
css3超出宽度自动换行,并且首行缩进2字符
div{
    word-break: break-all;
    word-wrap: break-word;
    text-indent: 2em;
}
单行超出宽度显示...
.Ellipsis {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
多行超出宽度显示...以及要求显示几行或者说根据文字多少显示几行
.Ellipsis {
               overflow: hidden;
                text-overflow: ellipsis;
                display: -webkit-box;
                -webkit-line-clamp: 2;  //控制显示几行
                -webkit-box-orient: vertical;   //webbox方向
}
CSS3强制英文、中文换行与不换行 强制英文换行
1. word-break:break-all;只对英文起作用,以字母作为换行依据
2. word-wrap:break-word; 只对英文起作用,以单词作为换行依据
3. white-space:pre-wrap; 只对中文起作用,强制换行
4. white-space:nowrap; 强制不换行,都起作用
5. white-space:nowrap; overflow:hidden; text-overflow:ellipsis;不换行,超出部分隐藏且以省略号形式出现(部分浏览器支持)
有什么不足的地方,望大家多多提出宝贵的意见。
.card-item {
        width: 32%;
        font-size:28upx;
        word-break: break-word;//文本超出 自动换行
  }
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|紫影基地

GMT+8, 2025-1-12 12:18 , Processed in 0.085786 second(s), 21 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表