单行文字、多行文字溢出时省略号表示的多种解决方式;调整字符间距;段落首字母大写缩进效果;

文本溢出省略号表示的实现效果:

1、解决单行文字溢出:

解决方式:

在文字容器样式中添加 overflow:hidden; text-overflow:ellipsis; white-space: nowrap;  其中overflow:hidden;是在超出元素宽度范围时候不使用滚动条,text-overflow:ellipsis;表示在文本溢出时候使用省略号表示,white-space: nowrap;表示文本单行显示不换行;

代码:

<p class="firstP">这是单行文字,一般在新闻标题列表时会经常使用</p>
.firstP {margin-bottom: 20px;width:200px;background-color:lightblue;overflow:hidden;text-overflow:ellipsis;white-space: nowrap;} 

 

2、解决多行文字溢出:

在样式中添加:display: -webkit-box;  -webkit-box-orient: vertical;  -webkit-line-clamp: 3;  overflow: hidden;  其中-webkit-line-clamp: 3; 是用来限定一个块级元素显示的文本行数的,为了实现该效果必须组合其他webkit属性,如必须使用display: -webkit-box;  定义使用webkit弹性盒子模型,使用 -webkit-box-orient: vertical;定义盒子子元素排列方式;overflow: hidden; 表示文本溢出时候不显示滚动条;

注意:因使用了WebKit的CSS扩展属性,该方法适用于WebKit浏览器及移动端页面;并且需要将height设置为line-height的行数倍,不然会造成文字部分露出,如下:

代码:

<p class="secondP">多行文字内容在网页文字简介区域的时候会经常使用到。多行文字内容在网页文字简介区域的时候会经常使用到。多行文字内容在网页文字简介区域的时候会经常使用到。</p>
.secondP {width:235px;height:52px;line-height: 20px;font-size: 18px;overflow: hidden;text-overflow: ellipsis;display: -webkit-box;-webkit-box-orient: vertical;-webkit-line-clamp:3;background-color:lightgreen;}

 

3、使用绝对定位实现多行文本溢出时显示省略号,缺点是即使没有溢出也会存在省略号

解决方式:使用绝对定位包含(...)的元素模拟实现。

注意:结束的省略号元素可能导致文字只显示一半的效果,所以这里使用背景渐变函数来过渡遮改文字;IE6-7不显示content内容,所以要兼容IE6-7可以是在内容中加入一个标签,比如用<span class="line-clamp">...</span>去模拟;要支持IE8,需要将::after替换成:after;

代码和效果图如下:

   <p class="thirdP">多行文字内容在网页文字简介区域的时候会经常使用到。多行文字内容在网页文字简介区域的时候会经常使用到。多行文字内容在网页文字简介区域的时候会经常使用到。</p>
.thirdP {position: relative;line-height: 20px;font-size: 18px;height:60px;width:235px;overflow: hidden;}.thirdP::after {content:"...";font-weight: bold;position: absolute;bottom:0;right:0;padding:0px 5px 0px 30px;background:linear-gradient(to right,transparent,#fff,55%);  background: -webkit-linear-gradient(left, transparent, #fff 55%);background: -o-linear-gradient(right, transparent, #fff 55%);background: -moz-linear-gradient(left, transparent, #fff 55%);}

 

5、clamp.js插件实现多行文本溢出的问题;

插件下载地址:https://github.com/josephschmitt/Clamp.js

clamp.js使用:

$clamp(node,options);

其中node是要操作的节点,options包括:clamp——行数,useNativeClamp——是否使用-webkit-line-clamp属性,trucationChar——省略的符号(不限于省略号),truncationHTML——省略的内容(不限于符号),animate——是否实现动画折叠。

代码和效果图如下:

<body><style>#firstP,#firstP2 {width: 250px;background-color: lightblue;}.setColor {color:blue;}</style><p id="firstP" >水光潋滟晴方好,山色空蒙雨亦奇。欲把西湖比西子,淡妆浓抹总相宜。</p><p id="firstP2" >水光潋滟晴方好,山色空蒙雨亦奇。欲把西湖比西子,淡妆浓抹总相宜。</p><script src="../clamp.js"></script><script>var header = document.getElementById("firstP");$clamp(header, {clamp: 2});var header2 = document.getElementById("firstP2");$clamp(header2, {clamp: 3,useNativeClamp:false,truncationChar:' ',truncationHTML:'<span class="setColor">Read more.</span>'});</script>
</body>

 

6、段落首行缩进两个字符:text-indent:2em;  注意:text-indent可以使得容器内首行缩进一定单位。em是相对单位,2em表示段落缩进2个汉字,text-indent只对p和div标签有效,对br换行标签无效;代码和效果如下:

<p style="text-indent:2em;border:1px solid red;width:200px;">这是一个段落,段落内容云云。</p>
<p style="text-indent:20px;border:1px solid blue;width:200px;">这是一个段落,段落内容云云。</p>

 

7、letter-spacing设置字符间距,word-spacing设置单词间距;所以中文调整字间距使用word-spacing无效的,word-spacing代表英文单词之间的间距;效果比对如下:

   <p style="border:1px solid red;width:400px;letter-spacing:20px;">这是一个段落,hello the world!</p><p style="border:1px solid blue;width:400px;word-spacing:20px;">这是一个段落,hello the world!</p>

 

8、设置首字母大写,使用选择器:first-letter 来指定元素第一个字母的样式。: IE 5.5-8 and Opera 4-6 只支持旧的语法标准,single-colon CSS2语法(:first-letter)。新版本支持的标准,双冒号CSS3语法(::letter)。注意:该选择器仅适用块级元素中。代码和效果如下:

      .testFirlet::first-letter {font-size:200%;color:#8A2BE2;}
   <p class="testFirlet">my friend is tom</p><p class="testFirlet">我的朋友是汤姆</p><h3 class="testFirlet">my friend is tom</h3><span class="testFirlet">my friend is tom</span>

效果图:

参考网址:https://blog.csdn.net/chensonghuiyuan/article/details/49204747

https://jingyan.baidu.com/article/2a138328971e8c074a134f82.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/554070.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

如何升级IE浏览器 电脑IE浏览器怎么升级

如何升级IE浏览器?升级IE浏览器有两种方法&#xff0c;其一便是在网络上下载另一个版本的IE浏览器安装即可&#xff0c;另外一种则是直接访问微软官网获取IE&#xff0c;但因为微软的服务器不在中国&#xff0c;访问速度可能会让你崩溃。 如何升级IE浏览器&#xff1f; 方法…

js遍历对象、遍历数组、js数组方法大全、区分map()和forEach()以及filter()、区分for...in...和for...of...

1、给对象添加属性&#xff1a;使用 object.prop 或object[prop] 给对象添加属性 let obj{};obj.name"zhangsan";obj["age"]23;obj["class"]"语文";console.log(obj); //输出&#xff1a;{name: "zhangsan", age: 23, cl…

老毛桃U盘快速装系统

第一步&#xff1a;准备工作 1、一个u盘&#xff08;大小在4G以上&#xff09;&#xff1b; 2、下载所需安装的win7、win8 系统ISO文件&#xff08;大小在4G左右&#xff0c;过小则说明IOS下载错误&#xff09;&#xff1b; 3、U盘爱动盘制作工具&#xff08;这里使用的是老…

禁止IE页面自动跳转到EDGE浏览器的方法教程

IE浏览器一直是我们最常用的浏览器&#xff0c;但是Windows系统在大力推广edge浏览器的时候强制原来的IE用户使用IE浏览器的时候直接跳转到edge浏览器。应该怎么禁止IE浏览器跳转edge浏览器呢?下面小编就带着大家一起学习一下吧! 设置步骤&#xff1a; 1、首先打开IE浏览器&…

Vuex使用详解,附加项目遇到的问题(简单明了)

Vuex的定义、个人理解和结构解析 vuex定义&#xff1a;vuex是一个专门为vue.js设计的集中式状态管理架构。 vuex的个人理解&#xff1a; 是存储公有状态数据state的一个仓库(store)&#xff1b;解决了大型应用时组件传参的繁杂和不易维护性&#xff1b;vuex的状态储存是响应的…

Chorme控制台console的用法;

前提&#xff1a;是谷歌浏览器&#xff01; IE8- 不支持console.log();会报错&#xff0c;解决如下&#xff1a; (function (){//创建空console对象&#xff0c;避免JS报错 if(!window.console) window.console {}; var console window.console; //添加console对象的方…

搜狗浏览器如何下载安装 安装搜狗浏览器的详细步骤

搜狗浏览器如何下载安装?搜狗浏览器是一款很不错的网页浏览软件&#xff0c;但是大家知道如何下载安装搜狗浏览器吗?不会的小伙伴就请跟着小编一起来看看安装搜狗浏览器的操作步骤吧。 方法/步骤 1、我们寻找搜狗浏览器官方版本&#xff0c;点击搜寻。 2、可以选择软件库下…

null、undefined、NaN区分解析和条件判定,以及在IF条件中的判定

NaN的理解和用法&#xff1a; NaN 属性是代表非数字值的特殊值。该属性用于指示某个值不是数字。可以把 Number 对象设置为该值&#xff0c;来指示其不是数字值。 Number.NaN 是一个特殊值&#xff0c;说明某些算术运算&#xff08;如求负数的平方根&#xff09;的结果不是数…

360浏览器鼠标手势怎么关 取消360浏览器鼠标手势的方法

360浏览器鼠标手势怎么关?鼠标手势&#xff0c;也就是右键滑动动作&#xff0c;对于不习惯使用该功能的用户而言&#xff0c;是一项体验很差的功能&#xff0c;如果你也想要关闭该功能&#xff0c;可以参考下文中的方法进行处理&#xff0c;想要再次开启也可以这样操作。 1、…

vue数组修改不触发视图更新、vue向响应式对象添加或删除属性

背景&#xff1a;在vue开发中会遇到data数据更改后view试图不会进行响应式更新的情况 以下4种情况不触发vue响应式更新&#xff01;&#xff01; 不能检测到的数组变动是&#xff1a; 1、当利用索引直接设置一个项时&#xff0c;例如&#xff1a;vm.items[indexOfItem] newVal…

360浏览器怎样清除缓存

360浏览器怎样清除缓存?很多用户反应360浏览器跳转页面的速度越来越慢&#xff0c;其实这时候有可能是因为缓存太多&#xff0c;下面&#xff0c;小编就为大家介绍下360浏览器清除缓存方法。 1、点击浏览器右上角的“工具”菜单。 2、点击“清除上网痕迹”。 3、在清除上网…

vue.nextTick()方法的使用详解(简单明了)

什么是Vue.nextTick()&#xff1f;&#xff1f; 定义&#xff1a;在下次 DOM 更新循环结束之后执行延迟回调。在修改数据之后立即使用这个方法&#xff0c;获取更新后的 DOM。 所以就衍生出了这个获取更新后的DOM的Vue方法。所以放在Vue.nextTick()回调函数中的执行的应该是会…

猎豹浏览器网页声音怎么关闭 2步关闭网页声音

作为一款主打安全与极速特性的浏览器产品&#xff0c;猎豹浏览器在国内也有不少忠实的粉丝。不过&#xff0c;想要熟练的使用猎豹浏览器中的各种功能&#xff0c;其实并不容易!下面小编就来介绍一下猎豹浏览器关闭网页声音的方法&#xff0c;小伙伴们可不要错过了。 方法步骤 …

vue项目中全局引用jquery 、引用外部js的多种方式(外部纯函数js、外部自执行js、外部js插件),附niceScroll滚动条插件使用

vue项目中全局引用jquery &#xff1a; 1、“ npm install jquery --save ” 命令安装jquery 2、在项目根目录下的 build 目录下找到webpack.base.conf.js 文件&#xff0c;在开头使用以下代码引入webpack&#xff0c;如下 var webpack require(webpack) 3、在webpac…

隐藏浏览器滚动条但内容可以滚动的3种解决方式(简单清晰)

第一种&#xff1a;使用纯css样式属性隐藏滚动条 &#xff1a;火狐浏览器的css写法不兼容 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, i…

QQ浏览器登陆微信的方法

微信是腾讯旗下第二款即时通讯软件&#xff0c;简单明了的功能界面&#xff0c;简洁的聊天窗口收获了大量的用户&#xff0c;而且强大的在线支付功能与支付宝一同为现代中国的网络发展提供了巨大的推力。微信不同于QQ可以直接使用电脑客户端登陆&#xff0c;在早期更是只有手机…

vue生命周期详解、钩子函数的调用(简单易懂)

定义&#xff1a;vue的生命周期是指vue实例从初始化创建到实例销毁的过程。期间会有8个钩子函数的调用。 vue的钩子函数图解&#xff1a; vue的钩子函数使用总结&#xff1a; 1、beforeCreate&#xff08;创建前&#xff09;:beforeCreate钩子函数&#xff0c;这个时候&#x…

QQ浏览器如何查看网站保存的密码

小编日常使用的浏览器大多是QQ浏览器&#xff0c;基于腾讯QQ下的账号同步功能给我带来了许多方便&#xff0c;其中QQ浏览器的账号密码自动保存&#xff0c;同时通过云同步可以在各个终端同步账号密码&#xff0c;所以使用QQ浏览器对常用网络浏览时可以一键免密登录&#xff0c;…

vue-router详尽:编程式导航、路由重定向、动态路由匹配、路由别名、嵌套路由、命名视图

vue-router编程式导航 在vue项目中经常用到this.$router.push() 和 this.$router.replace() 方法进行路由跳转就是编程式导航。。。 通俗理解编程式导航&#xff1a;通过操作$router实例的JavaScript代码实现路由跳转。点击 <router-link :to"..."> 等同于调用…

win10 edge默认浏览器设置更改教程

win10 edge默认浏览器设置更改教程 win10 edge默认浏览器怎么设置?在Win10中&#xff0c;默认浏览器修改已经不再像以前Win7/Win8.1那样容易&#xff0c;已经不能直接通过第三方浏览器设置直接修改&#xff0c;要用到新的“招数”&#xff0c;用户需在“设置”中手动修改。如…