偶然看到一篇类似css技巧与经验总结的文章,其中有一部分非常熟悉,那就是“css控制元素内文本超出部分使用省略号代替”,一般实际工作中,

很多产品经理会对页面UI有这样的要求。还记得,第一次做这个功能时,是通过百度到的,然后就是一劳永逸,直接记事本记录下来,以后基本上

就是拿来主义,根本就没有去研究一下其中的原理(其实也没什么原理,方法也很简单,O(∩_∩)O哈哈~),恰逢今日又碰到了,那就做个了断吧。

实现如题的功能,我们常用的代码如下:

p{

    width: 100px;

    white-space: nowrap;

    overflow: hidden;

    text-overflow: ellipsis;

}

这里P标签的4个css属性都是必要的,这些属性都起到什么作用呢?

width:用于设置p标签的宽度,如果没有宽度,何为“超出”,对吧?即使是没有手动的为p标签设定宽度,那么p标签横向也会自动充满父元素,也就是所说的100%;

white-space:这个属性不得了,特别值为“nowrap”的时候,为何这么说呢,因为当块级元素内的文本如果超过一行,即多行时,文本默认是要换行的,绝不会出现溢出

的情况;但是如果元素设置了这个属性white-space:nowrap,那么文本会无视父元素的宽度限制,结果就是文本溢出,如下图:

结果就是这样,你说它牛叉不牛叉。

overflow:该属性是告诉元素,如果它内部包含的元素(图片、文本、其他元素等等)超出它的长宽范围时该如何处理,是显示滚动条呢,还是隐藏超出部分呢?而我们

当前所说的案例是需要超出的文本被隐藏,所以我们设置overflow:hidden。

text-overflow:这个属性是CSS3的新属性,下面是官方解释:

我们需要把它的值设为ellipsis,该值的意思就是以省略号代替超出的文本部分。

4个属性值组合起来使用,最后达到了这样的效果:

代码

运行结果

结语:希望此篇文章可以对像我一样“拿来主义”的童鞋们有所帮助

不值一提,却又不得不提的“CSS文本超出部分省略号代替”的更多相关文章

  1. css文本超出部分省略号&CSS强制换行总结

    word-break:break-all单词截断自动换行 word-break:break-all 例如div宽200px,它的内容就会到200px自动换行,如果该行末端有个英文单词很长(congra ...

  2. 关于H5 移动端css 文本超出时省略号 失效的问题

    之前写代码的时候遇到一个问题,就是用了下面这段css代码来让文字超出范围隐藏并显示省略号. overflow: hidden; text-overflow: ellipsis; display: -w ...

  3. CSS文本超出用省略号代替的方法

    { white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }

  4. css文本超出省略号

    终于完成了项目了,今天我就分享自己在项目中比较实用的一些功能的实现,第一个就是纯css文本超出省略号 /* 文本单行超出省略号 */ .textels { overflow: hidden; text ...

  5. 文本超出显示省略号/数字英文字母折行有关css 属性/显示两行,第二行省略号显示css方法

    文本超出显示省略号: 定容器宽度 overflow: hidden; text-overflow: ellipsis; 文本超出显示省略号 white-space:nowrap;  强制文本不换行 折 ...

  6. CSS文本溢出显示省略号

    项目中常常有这种需要我们对溢出文本进行"..."显示的操作,单行多行的情况都有(具体几行得看设计师心情了),这篇随笔是我个人对这种情况解决办法的归纳,欢迎各路英雄指教. 单行 语法 ...

  7. 文本超出显示省略号CSS

    单行超出显示省略号 display: block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; 多行超出显示省略号 1.普 ...

  8. CSS——文本超出隐藏显示省略号

    文本超出隐藏显示省略号 1.单行文本的溢出显示省略号 overflow: hidden; text-overflow:ellipsis; white-space: nowrap; // overflo ...

  9. css 文本超出容器长度后自动省略的方法!

    我们在给用户显示文本内容的时候,往往需要避免文本内容超出容器宽度,防止换行溢出,小弟在网上找了下发现网上的实现仅仅只是实现了用 ...省略了的功能! 而并没有获取光标提示的功能,所有小弟就结合网上的代 ...

随机推荐

  1. day-7心得

    面向对象高级语法部分 经典类vs新式类 把下面代码用python2 和python3都执行一下 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 2 ...

  2. Flask之单元测试

    5.2单元测试 为什么要测试? Web程序开发过程一般包括以下几个阶段:[需求分析,设计阶段,实现阶段,测试阶段].其中测试阶段通过人工或自动来运行测试某个系统的功能.目的是检验其是否满足需求,并得出 ...

  3. 【转载】用原生JS和html5进行视频截图并保存到本地

    支持并尊重原创!原文地址:http://www.cnblogs.com/xieshuxin/p/6731637.html <!doctype html> <html> < ...

  4. Educational Codeforces Round 45 (Rated for Div. 2)

    A bracket sequence is a string containing only characters "(" and ")". A regular ...

  5. Stall Reservations(贪心+优先队列)

    Description Oh those picky N (1 <= N <= 50,000) cows! They are so picky that each one will onl ...

  6. jvm的GC日志分析 [转]

      jvm的GC日志分析 标签: jvm内存javagc 2015-06-22 16:37 1566人阅读 评论(1) 收藏 举报  分类: Java(4)  JVM的GC日志的主要参数包括如下几个: ...

  7. alsa-lib及alsa-utils成功移植(原…

    准备工作 alsa-lib版本:alsa-lib-1.0.23.tar.bz2 alsa-util版本:alsa-utils-1.0.23.tar.bz2 其他版本的alsa-lib和alsa-uti ...

  8. arm-linux-gcc-4.5.1的安装…

    原文地址:arm-linux-gcc-4.5.1的安装方法作者:游牧 说明:我使用的是在虚拟机下的红帽linux5 ,通过终端工具SecureCRT操作,使用虚拟机等其他工具的过程大致相同 1.使用r ...

  9. 在linux中read、write函数

    read函数从打开的设备或文件中读取数据.   #include<</span>unistd.h> ssize_t read(int fd, void *buf, size_t ...

  10. phpmailer邮件类

    <?php/** * 邮件类 * Enter description here ... * @author df * Mail::getMail()->sendMail(); * */cl ...