当前位置: 首页 > 图文教程 > 网页制作 > CSS样式表 > CSS:用overflow代替left截取指定长度字符串

CSS样式表
CSS网页设计实例:15个用CSS设计的网页表单实例
让IE可以变相支持CSS3选择器
CSS3制作的精彩的网页实例教程
5个实例让你轻松了解CSS3新属性
CSS教程:详解CSS特定值
网页制作中的水平居中和垂直居中解决方案
CSS教程:CSS属性behavior的语法
网页制作实例:用CSS样式描述表格Table边框
CSS Hack兼容各浏览器是否正常
应聘网页设计师常见的8个面试试题和答案
5个帮助你实现未来的网页设计的CSS3技巧
CSS教程:纯CSS实现的圆角化图片
CSS命名规范和CSS书写规范及方法
CSS教程:expression在Chrome的问题
CSS教程:CSS变换(transition)
float闭合(清除浮动)和CSS HACK
letter-spacing和word-spacing
CSS基础语法:群组化选择符
黑客选择CSS代码挂马 CSS挂马攻防实录
CSS3制作网页下拉菜单代码解释

CSS样式表 中的 CSS:用overflow代替left截取指定长度字符串


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-11   浏览: 256 ::
收藏到网摘: n/a


为了防止文章标题过长超过容器(td,div)宽度而显示成多行,我们通常要对标题进行处理让其显示在一行,通常使用的方法有两种:一种方法是在客户端用CSS设置容器的overflow属性;另一种方法则是在服务器端用left函数对标题字符串进行截取。两种方法通常情况下都能达到我们的目的:
                         <style type="text/css">
div{
width:200px;
overflow:hidden;
}
</style>
<div>轻轻松松在页面中插入单选按钮/复选框</div>
<div><% =Left("轻轻松松在页面中插入单选按钮/复选框",11) %></font></div>             
今天我们来比较一下它们的优缺点:
1.处理地点不同
一个位于客户端,一个位于服务器端。能在客户端的处理的尽量不要在服务器端处理,减轻服务器负担,这一原则大家都知道了。
2.处理对象的不同
CSS是对容器属性进行设置,left是对标题字符串进行处理,哪个更合理?回答这一问题前我们先问下:为什么要对标题长度进行处理?为的就是"让标题长度不超过容器长度"即可!CSS是对容器属性进行设置,当标题长度超出容器长度时就进行处理;而left的做法是对每个标题进行处理,将标题的长度都控制在我们测试得出的长度n范围内[left(title,n)],有一刀切的嫌疑。可见前者更具合理性。
3.对html处理的简易性
这一点是最能说服我用CSS的理由。有时由于某些原因,我们会在一些标题中加入了html代码,如:<font color="#FF0000">轻轻松松在页面中插入单选按钮/复选框</font>,我们想要的结果应当是让标题不显示为两行,但还要保证仍为红色!这点left做不到,要达到效果我们先得把html去除,然后对余下的字符串进行截取,再添加html,非常的麻烦;而css完全不理会html,真正做到"只对字符串进行处理",非常方便,如:
                         <style type="text/css">
div{
width:200px;
overflow:hidden;
}
</style>
<div><font color="#FF0000">轻轻松松在页面中插入单选按钮/复选框</font></div>
<div><% =Left("<font color=""#FF0000"">轻轻松松在页面中插入单选按钮/复选框</font>",11) %></font></div>             
采用left不仅达不到效果,有时还会导致页面显示出错!相比之下,用哪一个大家心里有数。