前言:

在实际的项目中,由于文字内容的长度不确定性和页面布局的固定性,难免会出现文字内容超过div(或其他标签,下同)区域的情况,此时比较好的做法就是当文字超过限定的div宽度后自动以省略号(…)显示,这样,按照习惯,人们都会知道这儿有文字被省略了。css中有个属性叫做 text-overflow:ellipsis; 配合其他一些属性可以实现IE,chrome,safria浏览器下文字溢出点点点省略号显示,在加上opera浏览器的私有属性 -o-text-overflow:ellipsis; 就目前而言,可以实现Firefox浏览器以外的所有主流浏览器的文字溢出点点点省略号显示。

而本文将提供多种兼容性上佳的文字溢出点点点省略号显示的方法,而里面不少方法就是自己想出来的。有使用外部辅助文件的,有纯粹的css方法的,还有使用jQuery方法的。每种方法都提供各个浏览器下的截图验证,提供实例页面,提供部分源文件,都是值得信赖的方法,希望对您有所帮助。文章中穿插了些牢骚,您可以跳过,与本文主体不是很相关。

目录:

常规css方法——使Firefox以外主流浏览器文字溢出省略号表示

使用ellipsis.xml文件使Firefox支持文字溢出后点点点省略号表示

我自己想出来的方法——margin负值定位法

1、常规css方法——使Firefox以外主流浏览器文字溢出省略号表示

下图为此常用方法在各个浏览器下的表现:

在IE6浏览器下、IE7浏览器下、chrome谷歌浏览器下、Safari浏览器下、opera浏览器下

Firefox火狐浏览器下

可以看到,仅在Firefox火狐浏览器下无法实现文字溢出省略号表示,其文字直接从中间咔掉了。综合考虑代码成本,表现效果,我个人觉得这样子已经算是不错的了,追求完美和实际效益之间要追求一定的平衡。如果页面上很多文字都溢出,则需要寻求更兼容的方法,要是偶尔会出现文字溢出的情况,就是用这类css代码就足够了,单层标签,简单实用:

.zxx_text_overflow{

width:27em;

white-space:nowrap;

text-overflow:ellipsis;

-o-text-overflow:ellipsis;

overflow:hidden;

}

2、使用ellipsis.xml文件使Firefox支持文字溢出后点点点省略号表示

这是老外提供的一种方法,使用Firefox的私有属性调用一个XML文件,可以使Firefox火狐浏览器下文字溢出后以省略号的形式显示。右键另存为下载:ellipsis.xml

调用方法如下: -moz-binding:url(‘ellipsis.xml#ellipsis’); 跟css样式写法一致。

需要注意的是:此XML文件不支持向上路径的访问,也不支持绝对路径的访问。也就是说此XML文件需要放在调用文件(css文件,或HTML文件)的同目录下或下一级目录下,不能向上访问。原因我是不清楚的,我反复试验,都证明如此。

下图为使用此XML文件后Firefox浏览器下的表现:

Firefox火狐浏览器下

可以清楚地看到溢出的文字部分用点点点省略号表示了。再结合上面的css样式,就可以实现所有主流浏览器下的单行文字溢出用省略号表示了。css表示如下:

.zxx_text_overflow{

width:27em;

white-space:nowrap;

text-overflow:ellipsis;

-o-text-overflow:ellipsis;

-moz-binding:url('ellipsis.xml#ellipsis');

overflow:hidden;

}

例如在实例页面中,此段css是写在页面上的,所以ellipsis.xml文件是放在HTML文件同目录下的。

3、我自己想出来的方法——margin负值定位法

这里先上代码,HTML部分:

这是一段比较长的文字,用来测试是否文字溢出时会用省略号显示。

css部分:

.zxx_text_overflow{width:24em; height:1.3em; overflow:hidden; zoom:1;}

.zxx_text_overflow .text_con{float:left; height:1.3em; margin-right:3em; overflow:hidden;}

.zxx_text_overflow .text_dotted{width:3em; height:1.31em; float:right; margin-top:-1.3em;}

结果在不同浏览器下的表现如下(IE6,IE7以IE6示例,Firefox和chrome以Firefox示例):

IE6下,IE7同类型,表现一致

Firefox浏览器下表现

opera浏览器下表现

Safari浏览器下表现

简要说明:此方法兼容IE6,IE7(IE8未测过),Firefox,chrome,Safari,opera浏览器。没有hack,没有生僻的css样式。文字短时,没有省略号,文字溢出时就出现省略号。可以说是相当不错的一个方法。原理也很简单:当文字内容足够长时就把隐藏在上面的省略号层给挤下来了。关键就是点点点所在div层的高度的绝对值要比其margin的绝对值大那么一点点。 如果您不习惯用em做单位,直接换作px就可以了,效果是一样的。

html文字溢出用省列号,关于文字内容溢出用点点点(...)省略号表示相关推荐

  1. 溢出处理html,小技巧处理div内容溢出_CSS/HTML

    小技巧处理div内容溢出_CSS/HTML 前几天遇到一个问题,代码是这样一个层次: 代码如下: 1 2 3 我设置了p的边框, 要想ul的内容在边框内, 必须设置p高度. 但是,ul内的内容是变化的 ...

  2. 单行溢出隐藏没生效_溢出隐藏:最全的利用css解决内容溢出问题的几种方案

    在p布局中,有的文字内容多了会超过溢出我们限制的高度,有的图片会撑破DIV,让网页错位变乱.内容溢出了容器,超出了容器所限定的宽度和高度应该怎么办呢?可以将文本溢出部分进行隐藏或者用省略号代替,那具体 ...

  3. html表格内容溢出隐藏,溢出隐藏:最全的利用css解决内容溢出问题的几种方案...

    在p布局中,有的文字内容多了会超过溢出我们限制的高度,有的图片会撑破DIV,让网页错位变乱.内容溢出了容器,超出了容器所限定的宽度和高度应该怎么办呢?可以将文本溢出部分进行隐藏或者用省略号代替,那具体 ...

  4. 关于文字内容溢出用点点点(…)省略号表示

    关于文字内容溢出用点点点(-)省略号表示 by zhangxinxu from http://www.zhangxinxu.com 本文地址:http://www.zhangxinxu.com/wor ...

  5. VC++ 单文档的状态栏编程、CEditView类实现编辑器功能、编辑框显示行号列号

    Win10 企业版:VC6: 新建一个单文档工程:默认的视图类的基类是CView:选择CEditView类作为,看一下生成的效果: 构建一下:运行:以CEditView作为基类,生成的应用程序具有编辑 ...

  6. 4.编程打印一个二维数组中所有元素的和,并打印最大值,最小值(以及它们所在的行号和列号)

    /*晕呀,竟然做了一天,还不知道怎样做出来的.....*/ package HomeWork; import java.util.Arrays; /*4.编程打印一个二维数组中所有元素的和,并打印最大 ...

  7. 下面的一堆文字为了说明一件事情---.NET程序,内存溢出,如何控制.

    ========下面的一堆文字为了说明一件事情---.NET程序,内存溢出,如何控制.飞秋2010下载官网主要是堆HEAP大小如何控制以及优化.以减轻GC突发性负担及这个时候服务器当机的可能*. 对于 ...

  8. excel 单元格求和大于某个数后返回列号_Excel最常用的几个函数,我都帮你整理好了!...

    计算机二级考试中Excel表格经常需要用到函数公式,有些小伙伴经常会把函数公式给混淆. 在备考二级的过程中,我也经常会遇到这种情况:所以,在学习函数公式的过程中,我打算把这些公式都写下来. 我希望自己 ...

  9. html自动增加一行并获取行号,javascript开发系列(table操作,table增加一行,删除一行,取行号,列号)...

    增加删除:insertRow,deleteRow, insertCell,deleteCell, 行号,列号:rowIndex ,cellIndex. 实例: 无标题页 table { backgro ...

  10. html之table删除和添加数据(获取行号和列号)

    代码: <!DOCTYPE html> <html><head><meta charset="utf-8"><title> ...

最新文章

  1. php的延迟绑定,PHP延迟静态绑定使用方法实例解析
  2. 运维笔记--postgresql占用CPU问题定位
  3. 客户端代码压缩成zip和服务器开启gzip
  4. iis创建php网站,iis怎么搭建php
  5. (转)Eclipse平台技术概述
  6. 20-50k,杭州小影科技社招
  7. Delphi关于记录文件的操作-转
  8. 设置韩澳大利亚sinox弄winxp清除字体和界面美观
  9. ANSI, unicode, UTF-8编码详解
  10. 计算机打印怎样添加PDF格式,将PDF打印机添加到计算机后如何将Excel打印为PDF
  11. 【新年礼物】分享十个珍藏学习编程的网站,助大家2022如虎添翼
  12. 利用python合并关联两个表中的数据
  13. slave-pending-jobs-size-max导致主从延迟
  14. GBA探索日记(-)
  15. x86嵌入式主板定制版型选购标准
  16. 享受代码的快乐--小米抢购前端代码分析
  17. Algorithm summary
  18. redux与flux
  19. 我经历过的失败产品和项目(四):没有落单的多媒体彩铃媒体服务器
  20. 惠普HP Prime可编程计算器之工程测量计算

热门文章

  1. 2021充电必备:推荐一些免费的电子书网站及TXT阅读器
  2. 一点点读懂thermal(一)
  3. mysql字符集和校对规则(character sets and collations)详解
  4. windows xp\windows7\windows8\windows10\windows11原版镜像下载地址汇总
  5. 双绞线接法详解双绞线的标准的由来与分析
  6. excel-LOOKUP函数多条件查找
  7. 解决only integer scalar arrays can be converted to a scalar index
  8. ERROR Error: [copy-webpack-plugin] patterns must be an array
  9. MySql 操作时间
  10. LC1143---最长公共子序列