【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

相关推荐
前端_yu小白20 分钟前
js异步机制
前端·javascript·async·promise·await·js异步·回调地狱
Spider Cat 蜘蛛猫20 分钟前
chrome extension开发框架WXT之WXT Storage api解析【补充说明一】
前端·javascript·chrome
程序猿John4 小时前
ES6 新增特性 箭头函数
前端·javascript·es6
百锦再5 小时前
五种常用的web加密算法
前端·算法·前端框架·web·加密·机密
@大迁世界5 小时前
彻底改变我 React 开发方式的组件模式
前端·javascript·react.js·前端框架·ecmascript
William Dawson6 小时前
【Vue 3 + Element Plus 实现产品标签的动态添加、删除与回显】
前端·javascript·vue.js
拉不动的猪6 小时前
项目基础搭建时的一些基本注意点
前端·javascript·面试
蕉君桑6 小时前
vue2使用vue-echarts
前端·vue.js·echarts
runnerdancer6 小时前
React+Vite+Typescript项目脚手架模版
前端
Code额7 小时前
ECMAScript 6 新特性(二)
前端·javascript·ecmascript