css文本省略号
这里记录下如何用CSS实现单行、多行文本溢出容器的时候用省略号代替溢出部分。
单行文本溢出容器时显示省略号的CSS实现方法
/* 规定当内容溢出元素框(容器)时隐藏 */
overflow: hidden;
/* 规定当文本溢出包含元素(容器)出现省略号 */
text-overflow: ellipsis;
/* 规定段落中的文本不进行换行 */
white-space: nowrap;
要注意的是,因为是要在文本溢出容器时候显示省略号,因此容器是需要有固定的宽度的。
在上面的示例中,后面的85646464654495467417个哈哈哈都被省略成省略号了。
然后我们来对这些属性和值逐个分解。
overflow
overflow属性规定当内容溢出元素框时发生的事情。
| 值 | 描述 |
|---|---|
| visible | 默认值。内容不会被修剪,会呈现在元素框之外。 |
| hidden | 内容会被修剪,并且其余内容是不可见的。 |
| scroll | 内容会被修剪,但是浏览器会显示滚动条以便查看其余的内容。 |
| auto | 如果内容被修剪,则浏览器会显示滚动条以便查看其余的内容。 |
| inherit | 规定应该从父元素继承overflow属性的值,IE不支持这个值。 |
这里使用的是hidden。
text-overflow
text-overflow属性规定当文本溢出包含元素时发生的事情。
| 值 | 描述 |
|---|---|
| clip | 默认值。修剪文本。 |
| ellipsis | 显示省略符号来代表被修剪的文本。 |
| string | 使用给定的字符串来代表被修剪的文本。 |
这里使用的是ellipsis,是显示省略号的重点。
white-space
white-space属性规定如何处理元素内的空白。
| 值 | 描述 |
|---|---|
| normal | 默认值。空白会被浏览器忽略。 |
| pre | 空白会被浏览器保留。其行为方式类似HTML中的<pre>标签。 |
| nowrap | 文本不会换行,文本会在在同一行上继续,直到遇到<br>标签为止。 |
| pre-wrap | 保留空白符序列,但是正常地进行换行。 |
| pre-line | 合并空白符序列,但是保留换行符。 |
| inherit | 规定应该从父元素继承white-space属性的值,IE不支持这个值。 |
这里使用的是nowrap。
多行文本溢出容器时显示省略号的CSS实现方法
overflow: hidden;
/* 用来限制在一个块元素显示的文本的行数。为了实现该效果,它需要组合其他的WebKit属性,比如下面的两个 */
-webkit-line-clamp: 3;
/* 必须结合的属性,将对象作为弹性伸缩盒子模型显示 */
display: -webkit-box;
/* 必须结合的属性,设置或检索伸缩盒对象的子元素的排列方式,这里是垂直 */
-webkit-box-orient: vertical;
多行这个用的是Webkit的CSS扩展属性,因此只兼容Webkie内核的浏览器,实际场景基本用不上(我没有用过所以这么说,网上找的,嘻嘻)。
同时这些扩展属性也比较新,不知道有没有什么稀奇古怪的Bug(柠檬酸),已知的一个问题是即使末行文本未超出行的情况下也会出现省略号。因此建议还是想想别的折衷方法,比如修改页面布局配合其他CSS属性实现或用JavaScript实现。
"跟雨伞学做人,如果你不为别人挡风遮雨,谁又会把你高高举在头上。"
css文本省略号的更多相关文章
- css 文本省略号显示
文本省略号是非常常见的需求,而省略号展示又通常分为俩种情况折行和不折行.不折行: div { white-space:nowrap;/* 规定文本是否折行 */ overflow: hidden;/* ...
- css 文本省略号设置
本文推荐2种方法. 1. css tip:只兼容chrome内核的浏览器.ff不支持. .box { overflow: hidden; /* 溢出时不显示溢出的内容 */ text-overflow ...
- css文本超出省略号
终于完成了项目了,今天我就分享自己在项目中比较实用的一些功能的实现,第一个就是纯css文本超出省略号 /* 文本单行超出省略号 */ .textels { overflow: hidden; text ...
- CSS多余文本省略号显示
CSS多余文本省略号显示 本次案例代码是在 elementui 当中的 table 组件中实际需求 当然使用的是纯 CSS3 代码,所以原生支持度高,兼容性高,所以可多场景应用 对于过长文本进行单行省 ...
- css文本属性用法总结
稍稍总结了下css文本的一些属性用法,自己忘记的时候也可以用来查查,不用去查网站那么麻烦. 下面是部分总结,也希望对其他人有用 文本修饰 (1)text-decoration: 文本修饰(横线) 4 ...
- css 实现省略号. text-overflow: ellipsis; 同时设置四个属性才可以.
这个同时需要. text-overflow ; overflow ; white-space ; width ; 四个属性才可以. <!DOCTYPE html> <htm ...
- CSS 文本控制
one more time one more chance. 一歩重头学前端, css入门. 学习一些 CSS 文本控制的属性,防止做傻事.请大家对照下面列表检验下: 会的.不会的.似懂非懂的.笔者是 ...
- 第 15 章 CSS 文本样式[下]
学习要点: 1.文本总汇 2.文本样式 3.文本控制 主讲教师:李炎恢 本章主要探讨 HTML5 中 CSS 文本样式,通过文本样式的设置,更改字体的大小.样式以及文本的方位. 一.文本总汇 本节课, ...
- 第 15 章 CSS 文本样式[上]
学习要点: 1.字体总汇 2.字体设置 3.Web 字体 主讲教师:李炎恢 本章主要探讨 HTML5 中 CSS 文本样式,通过文本样式的设置,更改字体的大小.样式以及文本的方位. 一.字体总汇 本节 ...
随机推荐
- openstack Glance安装与配置
一.实验目的: 1.理解glance镜像服务在OpenStack框架中的作用 2.掌握glance服务安装的基本方法 3.掌握glance的配置基本方法 二.实验步骤: 1.在controller节点 ...
- MATLAB实例:绘制条形图
MATLAB实例:绘制条形图 作者:凯鲁嘎吉 - 博客园 http://www.cnblogs.com/kailugaji/ 用MATLAB绘制条形图,自定义条形图的颜色.图例位置.横坐标名称.显示条 ...
- Unable to open debugger port: java.net.SocketException
网上都说是tomcat端口被占用,其实不是,这是因为文件权限不够,脚本不能执行,debug当然不能接受网络连接的数据 可以在Event Log里看到 所以只需要更改文件的级别就可以了(可读可写可执行) ...
- dev c++必须修改的三处默认设置
此文档记录参加pat考试并且以dev c++[针对5.11版本]软件作为开发工具时,必须修改的三个默认设置. 1.修改默认语言标准 Dev C++ 5.11 版本支持较新的 C 和 C++ 标准,但是 ...
- C++入门到理解阶段二基础篇(8)——C++指针
1.什么是指针? 为了更加清楚的了解什么是指针?我们首先看下变量和内存的关系,当我们定义了int a=10之后.相当于在内存之中找了块4个字节大小的空间,并且存储10,要想操作这块空间,就通过a这个变 ...
- 利用Python进行数据分析-Pandas(第五部分-数据规整:聚合、合并和重塑)
在许多应用中,数据可能分散在许多文件或数据库中,存储的形式也不利于分析.本部分关注可以聚合.合并.重塑数据的方法. 1.层次化索引 层次化索引(hierarchical indexing)是panda ...
- 在IntelliJ IDEA中,Lombok注解@Slf4j找不到log解决方案
在IntelliJ IDEA中,注解@Slf4j找不到log时,可以安装Lombok插件 File → settings → Plugins, 然后点击"Browse repositorie ...
- zabbix 分布式监控及优化
1..zabbix分布式监控,模拟多机房实现监控? 1.有多机房时,需要用到proxy 1.网络不通 2.网络延迟 2.当监控的主机较多时,也可以用proxy来缓解压力 1.安装proxy [root ...
- 网络协议 15 - P2P 协议
大家说起种子,应该都知道是用来下载资源的.那么资源下载都有哪些方式?种子下载又有什么优势呢? 下载电影的两种方式 第一种是通过 HTTP 进行下载.这种方式,有过经历的人应该体会到,当下载文件 ...
- .netcore2.1 使用IdentityServer4 生成Token验证
每个新技术权限验证都有一套机制,之前项目WebApi接口权限验证用的是Owin做为权限验证,而.netcore权限限制使用的是IdentityServer4,采用JWT的方法验证token. 首先使用 ...