站内搜索
分类列表
本类阅读排行
本类推荐文章
- 把网页中的电话号码生成图片的ASP...
- 为动态生成html元素增加事件处理
- 如何将XHTML+CSS页面转换为打印机...
- 内容拷贝增加版权信息的JavaScrip...
- 用overflow代替left截取指定长度字...
- 网站论坛注册中常用的一种倒记时特...
- 网站常用的一种JS的图片幻灯片特效...
- revealTrans滤镜制作超弦图片的播...
- JS函数实现鼠标指向后带图片的提示...
- 两行代码在任意页面实现谷歌卫星图
- 网页制作中分类的选项卡特效代码
- 距离北京2008年奥运会开幕倒记时特...
- 网页的新颖效果:斜着滚动的marquee
- Javascript中判断润年简单的代码实...
- 巧妙去除网页中文字水印的两种方法
广告
用overflow代替left截取指定长度字符串
作者: 来源: 点击: 日期:2007-11-15 14:44:58
为了防止文章标题过长超过容器(td,div)宽度而显示成多行,我们通常要对标题进行处理让其显示在一行,通常使用的方法有两种:
一种方法是在客户端用CSS设置容器的overflow属性;
另一种方法则是在服务器端用left函数对标题字符串进行截取。
一种方法是在客户端用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不仅达不到效果,有时还会导致页面显示出错!
用overflow代替left截取指定长度字符串 评论
