当前位置: 首页 > news >正文

使用css3属性处理单词的换行和断词

  • 问题呈现
<div class="main">
Nameofuser-definedcallbackfunctiontobecalledwheneverastreamtriggersanotification. 
</div>
<style type="text/css">
.main{
    width: 100px;
    border: 2px solid red;
}
</style>
img_3de10c915bd4a9b676379cf323356361.png

默认情况下,连续的单词如果在一行容纳不下的话会在空格和连字符处换行,那如何让它换行呢?

  • 认识word-break属性
属性值解释
normal使用浏览器默认的换行规则(默认)
break-all允许在单词内换行
keep-all只能在半角空格或连字符处换行

现在大多说的浏览器默认的换行规则为半角空格和连字符,因此normal和keep-all的效果是一样的。

  • word-break: break-all
<style type="text/css">
.main{
    width: 100px;
    border: 2px solid red;
        word-break: break-all;
}
</style>
img_ba2252e573d6c8c6c2f45b5bac900bbc.png

word-break: break-all,打破了默认的换行规则。那如果想保留空格和连字符处换行怎么办?

  • 认识word-wrap属性
属性值解释
normal使用浏览器默认的换行规则(默认)
break-word长单词进行换行

下来看一下演示,我把单词内部插入了几个空格

  • 先看默认的,以作对比。我把长单词多插入了几个空格,以便效果明显
<div class="main">
    Name of user-definedcallbackfunction to be called wheneverastreamtriggersanotification. 
</div>
<style type="text/css">
.main{
    width: 100px;
    border: 2px solid red;
}
</style>
img_6128c4b4f952f58aabebb771234a0632.png

默认情况下,图上标号2和4是连续长单词,中间没有空格和连字符,所以没有换行(溢出)。

  • 下来看看word-wrap: break-word演示
<style type="text/css">
.main{
    width: 100px;
    border: 2px solid red;
    word-wrap: break-word;
}
</style>
img_037c67b2d5d3334b288e4305777b08c8.png

从图上看,保留了空格和连字符的换行状态。只是将前面图上标号2和4行的长单词进行了换行。

总结

  • word-break: break-all, 打破了浏览器的默认换行规则
  • word-wrap: break-word, 保留浏览器的默认换行规则,一旦一个连续长单词一行容纳不下,就只对这个长单词进行打破换行

相关文章:

  • Linux中文显示设置
  • Spark RDD API详解(一) Map和Reduce
  • 【HTML5】Server-Sent服务器发送事件
  • 阿里云centos 6.5 32位安装可视化界面的方法
  • Android 内容提供者的实现
  • SQL注入攻防入门详解
  • 关于Linux cached内存简析
  • abrtd是什么进程
  • linux下定时任务的使用
  • chrome远程调试真机上的app
  • I.MX6 boot from Micro SD
  • iOS开发多线程篇 03 —线程安全
  • maven exclusions【jar包依赖注意】
  • 拥抱JPA规范
  • ChemDraw在苹果电脑上能不能用
  • 3.7、@ResponseBody 和 @RestController
  • CentOS学习笔记 - 12. Nginx搭建Centos7.5远程repo
  • const let
  • eclipse(luna)创建web工程
  • github从入门到放弃(1)
  • Go 语言编译器的 //go: 详解
  • Java方法详解
  • node-glob通配符
  • Python语法速览与机器学习开发环境搭建
  • Spring Boot快速入门(一):Hello Spring Boot
  • SpringBoot几种定时任务的实现方式
  • 纯 javascript 半自动式下滑一定高度,导航栏固定
  • 道格拉斯-普克 抽稀算法 附javascript实现
  • 面试总结JavaScript篇
  • 目录与文件属性:编写ls
  • 如何选择开源的机器学习框架?
  • 一个JAVA程序员成长之路分享
  • 一个项目push到多个远程Git仓库
  • shell使用lftp连接ftp和sftp,并可以指定私钥
  • ​​快速排序(四)——挖坑法,前后指针法与非递归
  • ​DB-Engines 11月数据库排名:PostgreSQL坐稳同期涨幅榜冠军宝座
  • #在 README.md 中生成项目目录结构
  • (17)Hive ——MR任务的map与reduce个数由什么决定?
  • (html5)在移动端input输入搜索项后 输入法下面为什么不想百度那样出现前往? 而我的出现的是换行...
  • (Redis使用系列) Springboot 使用redis实现接口幂等性拦截 十一
  • (附源码)ssm码农论坛 毕业设计 231126
  • (附源码)ssm智慧社区管理系统 毕业设计 101635
  • (论文阅读26/100)Weakly-supervised learning with convolutional neural networks
  • (十五)使用Nexus创建Maven私服
  • (转)jdk与jre的区别
  • (转)Linq学习笔记
  • (转)scrum常见工具列表
  • (转)德国人的记事本
  • (转载)微软数据挖掘算法:Microsoft 时序算法(5)
  • (最完美)小米手机6X的Usb调试模式在哪里打开的流程
  • (最优化理论与方法)第二章最优化所需基础知识-第三节:重要凸集举例
  • .helper勒索病毒的最新威胁:如何恢复您的数据?
  • .MSSQLSERVER 导入导出 命令集--堪称经典,值得借鉴!
  • .NET Framework .NET Core与 .NET 的区别
  • .NET 表达式计算:Expression Evaluator