CSS3属性之text-overflow:ellipsis

语法:

text-overflow:clip | ellipsis

默认值为clip 不显示省略标记

clip:当前对象内文本溢出时不显示省略标记,而是将溢出部分裁剪。

ellipsis:当对象内文本一处时显示省略标记(...)。

一、常见的单行文本溢出显示省略写法:

text-overflow: ellipsis;

overflow: hidden;

white-space: nowrap;

复制代码
<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8" />
		<title></title>
	</head>
	<style type="text/css">
		.p{
			width: 100px;
			height: 40px;
			line-height: 40px;
			text-overflow: ellipsis;    /*1*/
			overflow: hidden;           /*2*/
			white-space: nowrap;        /*3*/
  			word-break: break-all;
		}
	</style>


	<body>
		<p class="p">多行文本溢出显示多行文本溢出显示多行文本溢出显示</p>
	</body>
</html>

二、多行文本溢出

WebKit浏览器有一个-webkit-line-clamp的属性,用这个即可以实现webkit内核的浏览器、以及大部分移动端的多行文本溢出省略号;

display:-webkit-box;

-webkit-line-clamp: 3/*第几行裁剪*/

-webkit-box-orient:vertical;

复制代码
<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8" />
		<title></title>
	</head>
	<style type="text/css">
		.p {
			height: 60px;
			line-height: 30px;
			width: 80px;
		    overflow : hidden;
		    text-overflow: ellipsis;
		    display: -webkit-box;     /*1*/
		    -webkit-line-clamp: 2;    /*2*//*第几行裁剪*/
		    -webkit-box-orient: vertical;   /*3*/
		} 
	</style>
	<body>
		<p class="p">多行文本溢出显示多行文本溢出显示多行文本溢出显示多行文本溢出显示多示</p>
	</body>
</html>

其它浏览器的话就需要通过js实现:

复制代码
<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8" />
		<title></title>
	</head>
	<style type="text/css">
		div{
			height: 60px;
		}
		p {
			line-height: 30px;
			width: 80px;
		    margin: 0 auto;
		}
	</style>
	<body>
		<div id="div">
			<p id="p">多行文本溢出显示多行文本溢出显示多行文本溢行文本溢示</p>
		</div>
	</body>
	<script type="text/javascript">
			var eleH = document.getElementById("div").clientHeight;

	        var pEle = document.getElementById("p");
	
	        while(pEle.clientHeight > eleH) {
	
	            pEle.innerText = pEle.innerText.replace(/(\s)*([a-zA-Z0-9]+|\W)(\.\.\.)?$/, "...");
	
	        };
	</script>
</html>
相关推荐
郭邯几秒前
一次「字符洁癖」引发的思考:我用 AI 写了个全角半角转换工具
前端
想要成为糕糕手2 分钟前
🚀 在浏览器里跑 DeepSeek-R1?WebGPU 端侧推理实战(五)—— 中断、重置、缓存与流式生成
前端·react.js·llm
GuWenyue3 分钟前
后端接口又双叒没写好?3 步搭建前端 Mock,从此告别"傻等后端"
前端·mocha
海兰3 分钟前
【数据采集】开源的 Web 数据采集与处理Firecrawl(一)
前端·开源
vivo互联网技术6 分钟前
从一键检测到 AI 修复:我们如何把无障碍检查做进研发流程
前端·人工智能
liuxiaocheng11 分钟前
聊聊 Vercel AI SDK 的流式协议:前后端到底是怎么"边想边说"的
前端·后端
胡萝卜术12 分钟前
在浏览器中跑 DeepSeek-R1:WebGPU 推理全流程深度解析
前端·javascript·面试
windliang42 分钟前
Claude Code 源码分析(十):MCP 外部工具如何进入下一轮 Agent 调用
前端·算法·面试
Yan_chen66644 分钟前
CTFHub XSS反射型实战攻略
前端·网络安全·漏洞·xss·ctfhub web前置技能
web像素之境1 小时前
前端工程化梳理
前端