最近在学习HTML+CSS知识,边学习边尝试着修改WordPress博客主题。
遇到一个问题,如图所示:这是博客网站的侧边栏目“热评文章”,字号看着太小,想使字号变大。
修改CSS文件中对应侧边栏的字号:
.sidebar-widget p,.sidebar-widget ul li,.sidebar-widget ol li
{
color: #333333;
font-size: 14px;
}
将font-size改为:font-size:14px后,显示结果如图:
标题太长时,一个标题会分两行显示,严重影响外观美化。那么怎样控制文字只显示一行,超出部分显示省略号呢?
这里需要用到CSS式样,代码如下:
.sidebar-widget p,.sidebar-widget ul li,.sidebar-widget ol li
{
color: #333333;
font-size: 14px;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
}
代码解释:
1.overflow:hidden:
overflow属性规定当内容溢出元素框时发生的事情。overflow属性可能的值有以下5中,这里取”hidden”值。
visible
默认值。内容不会被修剪,会呈现在元素框之外。
hidden
内容会被修剪,并且其余内容是不可见的。
scroll
内容会被修剪,但是浏览器会显示滚动条以便查看其余的内容。
auto
如果内容被修剪,则浏览器会显示滚动条以便查看其余的内容。
inherit
规定应该从父元素继承 overflow 属性的值。
2.white-space:nowrap
white-space属性声明建立布局过程中如何处理元素中空白符。(这里的空白符指我们用键盘敲入的空格或回车)whit-space属性可能的取值有以下6种,这里取值“nowrap”,即文本不换行,在一行内显示。
normal
默认。空白会被浏览器忽略。
pre
空白会被浏览器保留。其行为方式类似 HTML 中的
标签。
nowrap
文本不会换行,文本会在在同一行上继续,直到遇到
标签为止。
pre-wrap
保留空白符序列,但是正常地进行换行。
pre-line
合并空白符序列,但是保留换行符。
inherit
规定应该从父元素继承 white-space 属性的值。
3.text-overflow:ellipsis
text-overflow 属性规定当文本溢出包含元素时,是否显示省略标记。text-overflow属性可能的取值如下:
clip
修剪文本。
ellipsis
显示省略符号来代表被修剪的文本。
string
使用给定的字符串来代表被修剪的文本。
这里需要对文本溢出元素使用省略标记,选择“ellipsis”.
最终的效果如图:
总结:
要实现“控制文字只显示一行,超出部分显示省略号”的目的,
简单理解就是要把文本限制在一行(white-space: nowrap;),然后将溢出的部分要隐藏起来(overflow: hidden;),然后出现省略号( text-overflow: ellipsis)。