css单行文本及多行文本溢出显示省略号
关于文本溢出的相关属性:
1. text-overflow: clip|ellipsis|string; 该属性规定当文本溢出包含元素时发生的事情。
clip : 修剪文本。
ellipsis : 显示省略符号来代表被修剪的文本。
string : 使用给定的字符串来代表被修剪的文本。
2. white-space 属性设置如何处理元素内的空白。
可能的值及含义:
| normal | 默认。空白会被浏览器忽略。 |
| pre | 空白会被浏览器保留。其行为方式类似 HTML 中的 <pre> 标签。 |
| nowrap | 文本不会换行,文本会在在同一行上继续,直到遇到 <br> 标签为止。 |
| pre-wrap | 保留空白符序列,但是正常地进行换行。 |
| pre-line | 合并空白符序列,但是保留换行符。 |
| inherit | 规定应该从父元素继承 white-space 属性的值。 |
这里用上面两个属性实现单行文本溢出:
<p>该属性规定当文本溢出包含元素时发生的事情。</p>
p {
white-space:nowrap; /* 规定段落中的文本不进行换行:*/
width: 5rem; /* 规定容器的宽度,文本内容长度一定要小于容器宽度 */
overflow: hidden; /*隐藏超出部分*/
text-overflow: ellipsis; /*显示省略符号来代表被修剪的文本。*/
}
(单行文本溢出效果图 :)
上面实现了单行文本溢出显示省略号,比较简单,那如果要实现多行文本溢出的话则涉及到更多的属性:
3. box-orient 属性规定框的子元素应该被水平或垂直排列。
浏览器支持:
目前没有浏览器支持 box-orient 属性。
Firefox 支持替代的 -moz-box-orient 属性。
Safari、Opera 以及 Chrome 支持替代的 -webkit-box-orient 属性。
可能的取值:
| horizontal | 在水平行中从左向右排列子元素。 |
| vertical | 从上向下垂直排列子元素。 |
| inline-axis | 沿着行内轴来排列子元素(映射为 horizontal)。 |
| block-axis | 沿着块轴来排列子元素(映射为 vertical)。 |
| inherit | 应该从父元素继承 box-orient 属性的值。 |
4. -webkit-line-clamp 是一个不规范的属性,因为它没有出现在 CSS 规范草案中。
限制在一个块元素显示的文本的行数。 为了实现该效果,它需要组合其他外来的WebKit属性。常见结合属性:
display:-webkit-box;必须结合的属性,将对象作为弹性伸缩盒子模型显示 。-webkit-box-orient:必须结合的属性,设置或检索伸缩盒对象的子元素的排列方式 。text-overflow:可以用来多行文本的情况下,用省略号“...”隐藏超出范围的文本 。
这里用上面的属性实现多行文本溢出:
<p>
这里是显示书目内容简介,H+IDE是一个能够大大提升Html页面开发速度的一个模板资源整合开发工具,提升工作效率,值得推广使用!
</p>
p {
font-size: 0.6rem;
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-line-clamp:; //控制显示的文本的行数
overflow: hidden;
}
(多行文本溢出效果图)
5. 设置了文本溢出显示省略号后,往往需要判断当前文本是否溢出,从而做相应的操作:
$("p").mouseover(function() {
// 单行的判断width 或者 多行的判断 height
if (this.offsetWidth < this.scrollWidth) {
console.log("溢出了");
}else{
console.log("没有溢出");
}
});
经测试,该判断文本是否溢出的代码在IE8下可以正常运行!!! : )
css单行文本及多行文本溢出显示省略号的更多相关文章
- css单行文本和多行文本溢出实现省略号显示
1.单行文本溢出 文本内容 <div class="singleLine"> HelloWorldHelloWorldHelloWorldHelloWorldHello ...
- CSS 实现单、多行文本溢出显示省略号(…)
如果实现单行文本的溢出显示省略号同学们应该都知道用text-overflow:ellipsis属性来,当然还需要加宽度width属来兼容部分浏览. 实现方法: overflow: hidden; te ...
- HTML技巧篇:如何让单行文本以及多行文本溢出时显示省略号(…)
参考:https://baijiahao.baidu.com/s?id=1621362934713048315&wfr=spider&for=pc 本篇文章主要给大家介绍一下在html ...
- CSS实现单行、多行文本溢出显示省略号(…)
如果实现单行文本的溢出显示省略号同学们应该都知道用text-overflow:ellipsis属性来,当然还需要加宽度width属来兼容部分浏览. 实现方法: overflow: hidden; te ...
- CSS和JS实现单行、多行文本溢出显示省略号(该js方法有问题不对)
如果实现单行文本的溢出显示省略号同学们应该都知道用text-overflow:ellipsis属性来,当然还需要加宽度width属来兼容部分浏览. 实现方法: overflow: hidden; te ...
- CSS单行、多行文本溢出显示省略号(……)
这个问题经常遇到 1.单行文本溢出显示省略号(…) text-overflow:ellipsis-----部分浏览器还需要加宽度width属性 overflow:hidden;text-overflo ...
- CSS单行、多行文本溢出显示省略号
如果实现单行文本的溢出显示省略号小伙伴们应该都知道用text-overflow:ellipsis属性来,当然还需要加宽度width属来兼容部分浏览. 实现方法: overflow: hidden; t ...
- CSS单行、多行文本溢出显示省略号(……)解决方案
单行文本溢出显示省略号(-) text-overflow:ellipsis-----部分浏览器还需要加宽度width属性 .ellipsis{ overflow: hidden; text-overf ...
- CSS 单行 多行文本溢出显示省略号
单行文本 overflow: hidden; text-overflow:ellipsis; white-space: nowrap; 多行文本溢出显示省略号: <style type=&quo ...
随机推荐
- Plugin 'Scala' is incompatible with this.installation
==问题=== 手动安装IDEA的Scala插件,报这个错误. ===原因=== IDEA的版本与Scala插件的版本不兼容. ===解决=== 1.查看一下IDEA的版本 2.下载对应版本的Scal ...
- 2018.06.29 NOIP模拟 边的处理(分治+dp)
边的处理(side.cpp) [问题描述] 有一个 n 个点的无向图,给出 m 条边,每条边的信息形如<x,y,c,r><x,y,c,r><x,y,c,r>. 给出 ...
- FreeTextBox备忘
添加对4.0的dll文件引用 吧aspnet_client目录 copy到根目录下 设置文件上传目录属性ImageGalleryPath 设置相册属性到 ftb.imagegallery.aspx位置 ...
- EXCEL 单元格引用问题
=(SUM(INDIRECT("'2.5酒店预订收入'!"&"J"&MATCH(C21,'2.5酒店预订收入'!B:B,0)&" ...
- Nginx的两种负载均衡搭建(Tomcat版)
前言 Nginx的负载均衡一般采用upstream来实现,但是,还有另一种文件拓展的方式,同样可以实现负载均衡. 一.一般的负载均衡 upstream my_server { server local ...
- where /group by/ having/ order by/
1.order by 是 按字段 进行排序.. 字段后面可跟 desc 降序..asc 升序..默认为升序2.group by 是进行分组 查询3.having 和 where 都属于 条件过滤 区别 ...
- hdu 5032 不易发觉的树状数组
http://acm.hdu.edu.cn/showproblem.php?pid=5032 给定一个1000x1000的点阵,m组询问,每次询问一个由(0,0).(x,0)点一以及从原点出发的方向向 ...
- 【最大流之ek算法】HDU1532 求最大流
本来是继续加强最短路的训练,但是遇到了一个最短路 + 最大流的问题,最大流什么鬼,昨天+今天学习了一下,应该对ek算法有所了解,凭借学习后的印象,自己完成并ac了这个最大流的模板题 题目大意:都是图论 ...
- hibernate 延迟加载深入分析(persistentSet的延迟加载)
Hibernae 的延迟加载是一个非常常用的技术,实体的集合属性默认会被延迟加载,实体所关联的实体默认也会被延迟加载.Hibernate 通过这种延迟加载来降低系统的内存开销,从而保证 Hiberna ...
- [A,D]=solverAdini(node,elem,bdEdge,h1,h2)
>> [A,D]=solverAdini(node,elem,bdEdge,h1,h2) A = (1,1) 14.5000 (2,1) 11.0000 (3,1) 11.5000 (4, ...