使用WordPress建网站的过程中,当首页中或者侧边栏有新闻中心板块,而个别新闻的标题太长的时候,这些标题会分两行显示,严重影响外观美化。我们想控制文字只显示一行,超出部分显示省略号。下面我们就来介绍一下实现的方法,实现的原理是把文本限制在一行(white-space: nowrap;),将溢出的部分要隐藏起来(overflow: hidden;),然后出现省略号( text-overflow: ellipsis)。
打开主题所在目录,找到标题所对应的选择器名称(例如.news-title),添加如下样式:
1 2 3 4 5 6 7 | .news-title{ color: #333333; font-size: 14px; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; } |
下面我们来解释一下上面代码的含义:
overflow:hidden;
overflow属性规定当内容溢出元素框时发生的事情。overflow属性可能的值有以下5中,这里取”hidden”值,表示当内容溢出元素框时执行隐藏操作。
visible | 默认值。内容不会被修剪,会呈现在元素框之外。 |
hidden | 内容会被修剪,并且其余内容是不可见的。 |
scroll | 内容会被修剪,但是浏览器会显示滚动条以便查看其余的内容。 |
auto | 如果内容被修剪,则浏览器会显示滚动条以便查看其余的内容。 |
inherit | 规定应该从父元素继承 overflow 属性的值。 |
white-space:nowrap;
white-space 属性声明建立布局过程中如何处理元素中空白符。(这里的空白符指我们用键盘敲入的空格或回车)whit-space 属性可能的取值有以下6种,这里取值“nowrap”,即文本不换行,在一行内显示。
normal | 默认。空白会被浏览器忽略。 |
pre | 空白会被浏览器保留。其行为方式类似 HTML 中的 <pre> 标签。 |
nowrap | 文本不会换行,文本会在在同一行上继续,直到遇到 <br> 标签为止。 |
pre-wrap | 保留空白符序列,但是正常地进行换行。 |
pre-line | 合并空白符序列,但是保留换行符。 |
inherit | 规定应该从父元素继承 white-space 属性的值。 |
text-overflow:ellipsis;
text-overflow 属性规定当文本溢出包含元素时,是否显示省略标记。text-overflow属性可能的取值如下3种类,这里需要对文本溢出元素使用省略标记,选择“ellipsis”。
clip | 修剪文本。 |
ellipsis | 显示省略符号来代表被修剪的文本。 |
string | 使用给定的字符串来代表被修剪的文本。 |