文字溢出时的自动隐藏处理(显示省略标记...)

文字溢出时的自动隐藏处理(显示省略标记...)

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
<style type="text/css">
body{
font-size:14px;
color:#333;
}
/*一般的文字截断(适用于内联与块):*/
.textover{
display:block;/*内联对象需加*/
width:300px;
word-break:keep-all;/* 不换行 */
white-space:nowrap;/* 不换行 */
overflow:hidden;/* 内容超出宽度时隐藏超出部分的内容 */
text-overflow:ellipsis;
/* 当对象内文本溢出时显示省略标记(...) ;需与overflow:hidden;一 起使用。*/
/*text-overflow:clip;*//* 内容超出宽度时直接截断 */
}

/*对于表格文字溢出的定义:*/
table{
width:300px;
table-layout:fixed;/* 只有定义了表格的布局算法为fixed,下面td的定义才能起作用。 */
}
td{
width:100%;
word-break:keep-all;/* 不换行 */
white-space:nowrap;/* 不换行 */
overflow:hidden;/* 内容超出宽度时隐藏超出部分的内容 */
text-overflow:ellipsis;
/* 当对象内文本溢出时显示省略标记(...) ;需与overflow:hidden;一 起使用。*/
/*text-overflow:clip;*//* 内容超出宽度时直接截断 */
}

/*设置列表(li)超出部分显示省略号。注意:此方法适用与IE与OP浏览器*/
ul{
list-style:none;
padding:0;
margin:0;
}
li{
width:300px;
white-space:nowrap;
text-overflow:ellipsis;
/* 当对象内文本溢出时显示省略标记(...) ;需与overflow:hidden;一 起使用。*/
/*text-overflow:clip;*//* 内容超出宽度时直接截断 */
overflow: hidden;
}
</style>
</head>

<body>
一般:<br />
<span class="textover">
文字溢出时的自动隐藏处理文字溢出时的自动隐藏处理文字溢出时的自动隐藏处理文字溢出时的自动隐藏处理文字溢出时的自动隐藏处理
</span>
<span class="textover">
文字溢出时的自动隐藏处理文字溢出时的自动隐藏处理文字溢出时的自动隐藏处理文字溢出时的自动隐藏处理文字溢出时的自动隐藏处理
</span>
<br />
表格:<br />
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><a href="#">文字溢出时的自动隐藏处理文字溢出时的自动隐藏处理文字溢出时的自动隐藏处理文字溢出时的自动隐藏处理文字溢出时的自动隐藏处理</a>
</td>
</tr>
<tr>
<td><a href="#">文字溢出时的自动隐藏处理文字溢出时的自动隐藏处理文字溢出时的自动隐藏处理文字溢出时的自动隐藏处理文字溢出时的自动隐藏处理</a>
</td>
</tr>
</table>
<br />
列表li:<br />
<ul>
<li>
文字溢出时的自动隐藏处理文字溢出时的自动隐藏处理文字溢出时的自动隐藏处理文字溢出时的自动隐藏处理文字溢出时的自动隐藏处理
</li>
<li>
文字溢出时的自动隐藏处理文字溢出时的自动隐藏处理文字溢出时的自动隐藏处理文字溢出时的自动隐藏处理文字溢出时的自动隐藏处理
</li>
</ul>
</body>
</html>
### CSS 溢出隐藏并显示省略号的实现方式 CSS 提供了多种方法来处理文本溢出的情况,可以通过 `text-overflow` 属性配合其他属性实现单行或多行文本溢出自动添加省略号的效果。 #### 单行文本溢出隐藏并显示省略号 对于单行文本溢出的情况,可以使用以下 CSS 样式: ```css .single-line { width: 100px; /* 设置容器宽度 */ white-space: nowrap; /* 防止文字换行 */ overflow: hidden; /* 超出部分隐藏 */ text-overflow: ellipsis; /* 添加省略号 */ } ``` 此方法通过组合三个关键属性实现了单行文本溢出效果[^3]。其中: - `white-space: nowrap` 确保文本会折行; - `overflow: hidden` 将超出容器范围的内容隐藏; - `text-overflow: ellipsis` 在隐藏区域末端添加省略号。 #### 多行文本溢出隐藏并显示省略号 对于多行文本溢出的情况,则需要借助 `-webkit-box` 和相关属性完成: ```css .multi-line { display: -webkit-box; /* 使用弹性盒子模型 */ -webkit-box-orient: vertical; /* 垂直排列子元素 */ -webkit-line-clamp: 2; /* 控制最大行数为两行 */ overflow: hidden; /* 超出行数的部分隐藏 */ } ``` 该方案适用于现代浏览器中的 WebKit 渲染引擎环境下的多行文本截断需求[^2]。具体来说: - `display: -webkit-box` 启用了弹性盒布局模式; - `-webkit-box-orient: vertical` 定义了子项沿垂直方向堆叠; - `-webkit-line-clamp: N` 设定了允许的最大行数(此处设为 2 行)。 #### 自定义伪类实现更灵活的省略符位置调整 如果希望进一步自定义省略号的位置或者样式,还可以利用伪元素 `::after` 来手动模拟省略行为: ```css .custom-ellipsis { border: solid 3px; margin: auto; width: 500px; height: 90px; line-height: 30px; overflow: hidden; position: relative; } .custom-ellipsis::after { content: "..."; /* 插入省略号 */ position: absolute; right: 0px; bottom: 0px; background: #fff; /* 可选背景颜色覆盖原字迹 */ padding-left: 8px; } ``` 这种方法提供了更大的灵活性去控制省略标记的具体表现形式及其所在位置[^1]。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值