【CSS】关于文字的换行问题

给固定宽度的div中写入一些文字,你会发现文字可能会超出,实例如下:

html 复制代码
<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        .text {
            width: 150px;
            border: 1px solid #ccc;
            margin-bottom: 20px;
        }
    </style>
</head>

<body>
    <div class="text text1">hello今天是个好日子呀天气晴朗阳光明媚????????????</div>
    <div class="text text2">hello今天是个好日子呀天气晴朗阳光明媚abcabcabcabcabcabcabc</div>
</body>

</html>

上述代码在chrome上的展示结果如下:

那么如何让div中的文字不超出呢?这就涉及到 word-break 和 line-break 属性

在上面代码中给text1、text2加上以下样式:

css 复制代码
.text1 {
    /* 加了word-break后在chrome中还是会超出,但是在ios中并不会超出了 */
    /* word-break: break-all; */
    line-break: anywhere;
}

.text2 {
    word-break: break-all;
    /* 加了line-break后也能实现不超出的效果 */
    /* line-break: anywhere; */
}

在chrome上的展示结果就变成如下:

参考文章:

https://zhuanlan.zhihu.com/p/665011773

line-break介绍:https://blog.csdn.net/broken_promise/article/details/127039350

word-break属性:https://www.php.cn/faq/415051.html

相关推荐
晴天1613 分钟前
DeepSeek Harness 全景技术解析-Day23
前端·deepseek
风月说与山鬼20 分钟前
三、uni-app页面配置(pages.json)
前端·uni-app
daols8824 分钟前
vue 实现基于 vxe-table 构建多维度产品对比表
前端·javascript·vue.js
前端 贾公子28 分钟前
第08章:中间件(5)
服务器·前端·javascript
tech_zjf1 小时前
当 AI 把 Next.js Route 越写越快:我为什么做了 next-route-kit
前端·后端
常宇佳1 小时前
vue3 @代指src路径设置
前端·typescript·vue
砚凝霜1 小时前
软考网络工程师|案例分析:Eth‑Trunk 链路聚合、iStack 堆叠、CSS 集群核心考点总结
前端·css·网络
珐恩AI-人工智能2 小时前
大模型意图召回偏差分析:GEO如何解决“有收录却不触发问答曝光”的难题
大数据·前端·人工智能·html·流量运营·geo优化
程序员老赵2 小时前
Docker 部署禅道 ZenTao:轻松搭建研发项目管理平台
前端·后端·github
前端小卡拉2 小时前
用了大半年 AI 编程工具,我才搞懂 Skill 到底是什么
前端·javascript