html文字两行后,就用省略号代替剩下的

一、总结

一句话总结:

实现原理很简单,将box的高度设置为行高的两倍,超出之后隐藏,这样就只有两行了,然后再用after属性绝对定位在第二行后面加几个点 ...
  .style2{
position:relative;
line-height:21px;
height:42px; /*height是line-height的整数倍,防止文字显示不全*/
overflow:hidden;
}
.style2::after {
background: linear-gradient(to right, rgba(255, 255, 255, 0), #FFFFFF 50%) repeat scroll 0 0 rgba(0, 0, 0, 0);
bottom:;
content: "...";
padding: 0 5px 1px 30px;
position: absolute;
right:;
}

1、一行截断效果?

注意设置宽高,剩下的就是记住用white-space(不换行),overflow(超出部分隐藏),text-overflow(隐藏使用的替代符号)
  .font_cut{
width: 100%;
white-space:nowrap;
overflow:hidden;
text-overflow: ellipsis;
}

2、after属性里面如何指定内容?

content: "...";
  .style2::after {
background: linear-gradient(to right, rgba(255, 255, 255, 0), #FFFFFF 50%) repeat scroll 0 0 rgba(0, 0, 0, 0);
bottom:;
content: "...";
padding: 0 5px 1px 30px;
position: absolute;
right:;
}

3、after属性里面可以绝对定位么?

可以,操作after属性就和操作普通样式一样
  .style2::after {
background: linear-gradient(to right, rgba(255, 255, 255, 0), #FFFFFF 50%) repeat scroll 0 0 rgba(0, 0, 0, 0);
bottom:;
content: "...";
padding: 0 5px 1px 30px;
position: absolute;
right:;
}

二、html文字两行后,就用省略号代替

1、效果图

2、代码

 <!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<style>
.font_cut{
width: 100%;
white-space:nowrap;
overflow:hidden;
text-overflow: ellipsis;
}
.style2{
position:relative;
line-height:21px;
height:42px; /*height是line-height的整数倍,防止文字显示不全*/
overflow:hidden;
}
.style2::after {
background: linear-gradient(to right, rgba(255, 255, 255, 0), #FFFFFF 50%) repeat scroll 0 0 rgba(0, 0, 0, 0);
bottom: 0;
content: "...";
padding: 0 5px 1px 30px;
position: absolute;
right: 0;
} </style> </head>
<body>
<div class="font_cut" style="width: 300px;">
<span>一行显示不下,就用省略号代替;一行显示不下,就用省略号代替;一行显示不下,就用省略号代替;一行显示不下,就用省略号代替;一行显示不下,就用省略号代替;一行显示不下,就用省略号代替;</span>
</div>
<div style="margin-bottom: 60px;"></div>
<div class="style2" style="width: 300px;">
<span style="" class="">HTML文字超过两行以后 就用省略号显示代替;HTML文字超过两行以后 就用省略号显示代替;HTML文字超过两行以后 就用省略号显示代替;HTML文字超过两行以后 就用省略号显示代替;HTML文字超过两行以后 就用省略号显示代替;HTML文字超过两行以后 就用省略号显示代替;</span>
</div>
</body>
</html>

三、html文字超出两行,则显示省略号

转自或参考:html文字超出两行,则显示省略号
https://blog.csdn.net/camillezj/article/details/52767267

 

多行超出显示省略号

overflow: hidden;
text-overflow: ellipsis;
display: -webkit-box;
-webkit-line-clamp: 2; //2行
-webkit-box-orient: vertical;
注意:-webkit-line-clamp是一个 不规范的属性(unsupported WebKit property),它没有出现在 CSS 规范草案中。只适用于WebKit内核的浏览器,因此firebox、ie等并不支持该属性。

其他浏览器做法:

比较靠谱简单的做法就是设置相对定位的容器高度,用包含省略号(…)的元素模拟实现:
文字容器样式设置:

position:relative;
line-height:1.4em;
height:4.2em; //height是line-height的整数倍,防止文字显示不全
overflow:hidden;

文字容器::after {
background: linear-gradient(to right, rgba(255, 255, 255, 0), #FFFFFF 50%) repeat scroll 0 0 rgba(0, 0, 0, 0);
bottom: 0;
content: "...";
padding: 0 5px 1px 30px;
position: absolute;
right: 0;
}

或者使用插件:js插件-Clamp.js 、 jquery插件-jQuery.dotdotdot

单行不换行:width:100%;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;

 
 

html文字两行后,就用省略号代替剩下的的更多相关文章

  1. css强制换行显示省略号之显示两行后显示省略号

    1,首先来一个固定宽度,在一行显示,超出隐藏,显示省略号的样式 display:block; white-space:nowrap; overflow:hidden; text-overflow:el ...

  2. css文本强制两行超出就显示省略号,不显示省略号

    1. 强制一行的情况很简单 overflow:hidden; //超出的隐藏 text-overflow:ellipsis; //省略号 white-space:nowrap; //强制一行显示 2. ...

  3. js页面文字选中后分享到新浪微博实现

    demo您可以狠狠地点击这里:js文字选中分享到新浪微博demo 方法与代码 选中即分享的功能看上去比较高级,其实实现是相当简单的.其中的会让人头大,一般人也不感兴趣的原理这里就直接跳过.这个js文字 ...

  4. 帝国CMS万能标签标题截取后自动加入省略号

    帝国CMS万能标签标题截取后自动加入省略号,没有达到字数的则不加省略号完美解决方案1.打开e/class/connect.php  搜索 if(!empty($subtitle))//截取字符  大约 ...

  5. 帝国cms万能标签实现标题截取后自动加入省略号的方法

    很多采用帝国CMS建站的站长都会遇到标题过长导致页面排版错乱的情况,这时候往往需要用标题截取并追加上省略号的方法予以解决.对此,帝国CMS万能标签标题截取后自动加入省略号,没有达到字数的则不加省略号可 ...

  6. CSS——div内文字的溢出部分用省略号显示

    使得div内文字的溢出部分用省略号显示,可归纳为两种解决办法,一种方法是用CSS解决,另一种方法是js解决. 一.通过CSS控制显示 div内显示一行,超出部分用省略号显示 div内显示多行,超出部分 ...

  7. CSS div内文字显示两行,超出部分省略号显示

    1. 概述 1.1 说明 在项目过程中,有时候需要控制div内文字最多显示两行,超出的使用省略号进行处理.使用识别码/前缀-webkit进行处理可直接得到相应效果. 1.1 -webkit WebKi ...

  8. css文字两行或者几行显示省略号

    做这个省略的问题,突然发现显示省略号是有中英文区分的 我做两行的时候用的是以下代码,在是中文的情况下是么得问题,到了英文下发现不起作用了 width: 250px; overflow: hidden; ...

  9. td默认文字超出后显示..,点击tr时td文字显示完整

    做项目时,产品提的需求,table表格里面,每一列限制文字超出宽度后显示省略号,等点击td时,文字显示完整,今天整理了一下代码,积累一下 备注:1.邮箱和网址,在td里面不会自动换行,需要增加word ...

随机推荐

  1. vue的$nextTick使用后的js代码执行顺序问题

    一.问题产生背景: 父组件已经获得子组件实例,并能直接触发子组件的方法,在父组件中调用了子组件的两个方法 // 父组件调用子组件,this.picker是获取的子组件整个实例,先调用update,再调 ...

  2. 映射重复导致的错误:Ambiguous handler methods mapped for HTTP path

    转自:https://cloud.tencent.com/developer/article/1372150 出现了两个名称一样的映射,会报如下错误: 原因: 解决方法: 出现Ambiguous Ma ...

  3. 第三章、drf-ModelSerializer

    目录 ModelSerializer ModelSerializer 序列化 使用: ModelSerializer 反序列化 使用: ModelSerializer 序列化反序列化整合(*****) ...

  4. LAMP源码编译安装

    php加速器 XCache 快速而且稳定的PHP opcode缓存,经过严格测试且被大量用于生产环境. 项目地址:http://xcache.lighttpd.net/,收录EPEL源 实现XCach ...

  5. 【问题】为啥WMWare Workstation里面虚拟机的网关默认是NAT网关

    今天做KickStart自动化安装实验,无意中发现一个奇怪现象. 先描述下我的实验环境:笔记本Win10,安装了WMWare Workstation,在WMWare Workstation上面安装了C ...

  6. 剑指Offer编程题(python)——链表

    1.从尾到头打印链表 #输入一个链表,按链表值从尾到头的顺序返回一个ArrayList.class ListNode: def __init__(self, x): self.val = x self ...

  7. CLR ATL

    前段时间,帮人改了个项目,里面明明感觉是MFC,但是却调用C#的类函数,用的都是gcnew指针,凭借着对C#的熟悉,一点一点的实验,终于帮人把程序改好了,但是却不知道到底是什么东西,C#和MFC的混合 ...

  8. Mongo Backup

    #!/bin/sh # This script is run on every mongo node. However, it checks to see if this node is the pr ...

  9. adb连接各模拟器端口

    天天模拟器 adb connect 127.0.0.1:6555 网易MuMu adb connect 127.0.0.1:5555

  10. Nginx:Nginx概要

    简介 nginx是俄罗斯开源的HTTP和代理服务,也可以作邮件服务器. 核心功能: 1.正向代理:客户机的请求先到达nginx,再由nginx代理访问互联网资源 2.反向代理:客户机请求互联网,到达n ...