CSS样式解决英文换行断词问题
通常的我们在读取文章标题的时候,遇到字符过多,都是通过程序在SERVER端截取一定的字符数,然后添加...来实现标题长度截取的。其实我们也可以通过CSS来控制。
实列如下:
.title
{
width:200px;
white-space:nowrap;
word-break:keep-all;
overflow:hidden;
text-overflow:ellipsis;
}
可用span或div引用,例如:
<span class=title>客户端解决标题显示太长省略多余部分并加省略号的样式</span>
<div class=title>客户端解决标题显示太长省略多余部分并加省略号的样式</div>
以上2例显示在超过样式定义的200px宽度后,后面的字符将被...替换.
=============================================================================
(外一)
word-wrap : break-word ;word-break : break-all ;
word-wrap是控制换行的。
使用break-word时,是将强制换行。中文没有任何问题,英文语句也没问题。但是对于长串的英文,就不起作用。
break-word是控制是否断词的。
normal是默认情况,英文单词不被拆开。
break-all,是断开单词。在单词到边界时,下个字母自动到下一行。主要解决了长串英文的问题。
keep-all,是指Chinese, Japanese, and Korean不断词。即只用此时,不用word-wrap,中文就不会换行了。(英文语句正常。)
ie下:
使用word-wrap:break-word;所有的都正常。
让英文英文自动换行
style=”WORD-WRAP: break-word;TABLE-LAYOUT: fixed;word-break:break-all”
还有一种情况,往往需要设置数据只在一行里显示,但调用数据的时候,当没有为数据设定固定的长度的话,无论是IE还是firefox,到达边界都会自动换行(就算是设置了,但又会有英文和中文的字数区别,字数限制的个数又会是一个让你头痛或需要取舍的问题)。
哪有什么更好的解决办法呢?其实可以用CSS 的 white-space: nowrap 来解决这个问题。使用这个css属性之后,文本只有在遇到空格或者是换行符的时候才能换行。
如果是要应用到displaytag上面去的话,就在displaytag table中加{styel:wordwrap:break-word;}或直接在displaytag.css中对display样式进行增加。
如果是要应用到table上面的直接写到table 中 {styel:wordwrap:break-word;},不用写在每个td中。而且要是被多个table引用的话,直接写到总样式中……
相关文档:
CSS 盒模型
网页设计中的每个元素都是长方形的盒子。盒子的尺寸是怎样精确计算的,请看下图:
如果是 Firebug 用户的话(基本和前端有关的都会用到 Firebug 吧 – 糖伴西红柿),就会很熟悉下面的图表了。
这个图表很好地展示了作用于页面上任意盒子的数值。
注意以上两个例子中,margi ......
TABLE{
BORDER-RIGHT: #888 1px solid;
BORDER-TOP: #888 1px solid;
MARGIN-TOP: 10px;
BORDER-LEFT: #888 1px solid;
WIDTH: 100%;
BORDER-BOTTOM: #888 1px solid;
FONT-FAMILY: Arial, Helvetica, sans-serif;
BORDER-COLLAPSE: collapse;
}
TABLE PRE {
BORDER-TOP-WIDTH: 0px;
PADDING-RIGHT: 0px;
PA ......
我承认我并不经常想这个问题......我们写的css的效率是怎么样的呢,浏览器渲染的速度又如何呢?
这是应该是浏览器开发者应该关心的(页面加载更快,用户就会更愉快)。Mozilla有一篇文章:about best practices . Google当然也很关心这个问题,他们也有这样一篇文章:Optimize browser rendering 。
让我们了解下他们主要倡 ......
发文章中,图片把div撑破了的解决办法
原来图片自适应宽度一般都是通过Javascript来解决的,但是多少还是比较麻烦。还有一种通过设置外层容器overflow:hidden属性来解决,但是这样会导致图片显示不全的问题。今天看到了一种新的解决办法,通过CSS来解决这个问题。
CSS代码
img{
max-width:500px;&nbs ......
一、css优先于位置也有关系
.vm与.vb 样式的定义在优先级别上是相同的,但是如果在html属性里class="vm vb"定义的话优先级并不是写在属性里的顺序,而是写在样式里顺序来决定的。如下的例子
<mce:style><!--
.vm{vertical-align:middle} /* 由于位置原因优先于vb*/
.vb{vertical-align:baseline}
--> ......