【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

相关推荐
webkubor34 分钟前
一次前端生产白屏复盘:旧 HTML、Hash 资源和 MIME type text/html
前端·前端工程化
咩咩啃树皮1 小时前
第63篇【终极整合巨作】从零手写原生中后台管理系统|整合62篇全部前端知识点|从头到尾完整架构+全功能逻辑
前端·架构
Highcharts2 小时前
用Highcharts如何动态向一个序列添加点-示列讲解
前端
weixin_431600442 小时前
做 Agent 会用到的 Node API(4):取消与 AbortController
前端·学习·ai·agent·ai编程
JiaLin_Denny2 小时前
Vue3中ref和reactive用法与双向数据绑定
前端·javascript·vue.js
用户2181697049302 小时前
Flutter(十)Container Center Align
前端
无人生还3 小时前
从 Vue3 到 React · 快速上手系列第 12 篇:并发特性与性能优化
前端·vue.js·react.js
小p3 小时前
nextjs学习9: Next.js 渲染与缓存
前端·后端
乘风gg3 小时前
AI 时代,你的编程能力在第几层?我敢说,大多数人卡在第一层
前端·ai编程·claude
东风破_3 小时前
React Router v7 实战:用路由配置、懒加载与嵌套路由搭建一个完整的 SPA
前端