css单行文本与多行溢出文本的省略号问题
程序员文章站
2022-04-06 21:27:30
...
在文字布局和代码编写过程中遇到文本溢出是常有的事,下面总结一下对于单行文本溢出和多行文本溢出省略号的处理。
一。单行文本省略号
1 p class="text1"> 2 这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本 3 p>
.text1{ width: 100px; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
这里拿一段简单的文字示例单行文本溢出:
这里的width属性是必须的,因为需要知道它的宽度是多少,才能判断溢出;
overflow属性使为了隐藏溢出的文本;
white-space:
值 | 描述 |
---|---|
normal | 默认。空白会被浏览器忽略。 |
pre | 空白会被浏览器保留。其行为方式类似 HTML 中的 标签。 |
nowrap | 文本不会换行,文本会在在同一行上继续,直到遇到 标签为止。 |
pre-wrap | 保留空白符序列,但是正常地进行换行。 |
pre-line | 合并空白符序列,但是保留换行符。 |
inherit | 规定应该从父元素继承 white-space 属性的值。 |
text-overflow:
值 | 描述 |
---|---|
clip | 修剪文本。 |
ellipsis | 显示省略符号来代表被修剪的文本。 |
string | 使用给定的字符串来代表被修剪的文本。 |
二。多行文本省略号
1 p class="text2"> 2 这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本这是文本 3 p>
.text2{ height:53px; width:100px; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; }
上面说过的在这里就不再多说了。
在这里height属性和overflow属性相结合是为了隐藏省略号一下的文本,大家可以试一下不加的效果,就一目了然了。
line-clamp属性是为了控制文本显示多少行。
关于display和box-orient,在这里简单说一下:
说明:必须定义display属性才可以对box进行划分。
box-orient 属性指定一个box子元素是否应按水平或垂直排列。
值 | 说明 |
---|---|
horizontal | 指定子元素在一个水平线上从左至右排列 |
vertical | 从顶部向底部垂直布置子元素 |
inline-axis | 子元素沿着内联坐标轴(映射到横向) |
block-axis | 子元素沿着块坐标轴(映射到垂直) |
inherit | box-orient 属性的值应该从父元素继承 |
如果还是不太明白,大家可以访问网址:http://wenlong883.blog.163.com/blog/static/1718109162011102281912385/或在w3c里看css各个属性。
推荐阅读
-
css 文本单行显示溢出时出现省略号 多行显示溢出时出现省略号 首行缩进
-
CSS实现单行、多行文本溢出显示省略号
-
CSS3 - 文本超出隐藏显示省略号(单行 / 多行)
-
通过css绘制气泡解决文字溢出,鼠标移入出现气泡,移出隐藏气泡(支持多行文本,单行文本)
-
兼容ie的多行文本溢出隐藏,并显示省略号
-
荐 小Tip:关于单行/多行文本溢出隐藏的一些看法
-
CSS文本溢出时以省略号的形式显示
-
css 文本单行显示溢出时出现省略号 多行显示溢出时出现省略号 首行缩进
-
垂直居中--父元素高度确定的单行文本、父元素高度确定的多行文本_html/css_WEB-ITnose
-
垂直居中--父元素高度确定的单行文本、父元素高度确定的多行文本_html/css_WEB-ITnose