CSS超出长度自动截断是指当文本内容的长度超过其容器的宽度时,通过CSS样式控制文本的显示方式,使其在容器边界处被截断并显示省略号(...),而不是溢出容器。
text-overflow: ellipsis 实现文本截断并显示省略号。white-space: nowrap 和 overflow: hidden 实现单行文本截断。-webkit-line-clamp 属性(非标准,但广泛支持)实现多行文本截断。<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>单行文本截断示例</title>
<style>
.container {
width: 200px;
border: 1px solid #000;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
</style>
</head>
<body>
<div class="container">
这是一段非常长的文本,将会被截断并显示省略号。
</div>
</body>
</html><!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>多行文本截断示例</title>
<style>
.container {
width: 200px;
height: 50px;
border: 1px solid #000;
overflow: hidden;
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-line-clamp: 2;
}
</style>
</head>
<body>
<div class="container">
这是一段非常长的文本,将会被截断并显示省略号。这是第二行文本,也会被截断。
</div>
</body>
</html>原因:
overflow: hidden、text-overflow: ellipsis 和 white-space: nowrap(对于单行文本)都已正确设置。-webkit-line-clamp 属性在某些浏览器中可能不被支持。解决方法: