当前位置: 首页 > news >正文

CSS3属性—— line-clamp控制文本行数

说明:

限制在一个块元素显示的文本的行数。

-webkit-line-clamp 是一个 不规范的属性(unsupported WebKit property),它没有出现在 CSS 规范草案中。

为了实现该效果,它需要组合其他外来的WebKit属性。常见结合属性:

  • display: -webkit-box; 必须结合的属性 ,将对象作为弹性伸缩盒子模型显示 。
  • -webkit-box-orient 必须结合的属性 ,设置或检索伸缩盒对象的子元素的排列方式 。
  • text-overflow,可以用来多行文本的情况下,用省略号“...”隐藏超出范围的文本 。

今天接到优化需求,帖子列表里的内容要求缩略至3行,并带‘…’省略号

 

<!DOCTYPE HTML>
<html>
<head>
    <meta charset="utf-8">
    <title>cline-clamp</title>
    <style>    
            .box{
                width: 200px;
                height: 300px;
                border:1px solid black;
            }
            p{
                 display: -webkit-box;
                 -webkit-box-orient: vertical;
                  -webkit-line-clamp: 4;            /*设置p元素最大4行,父元素需填写宽度才明显*/
                  text-overflow: ellipsis;
                  overflow: hidden;
                 /* autoprefixer: off */
                 -webkit-box-orient: vertical;
                  /* autoprefixer: on */
                  /*因为代码环境的关系-webkit-box-orient被过滤掉了 autoprefixer 这个关键字可以免除被过滤的动作*/
          word-wrap:break-word;
          word-break:break-all;
} </style> 
</head> 
<body> 
<div class="box"> 
    <p> static:对象遵循常规流。top,right,bottom,left等属性不会被应用。 relative: 对象遵循常规流,并且参照自身在常规流中的位置通过top,right,bottom,left属性进行偏移时不影响常规流中的任何元素。 absolute:对象脱离常规流,使用top,right,bottom,left等属性进行绝对定位,
    </p> 
</div> 
</body> 
</html>

 

效果如下:

    

 

 

如果你标签内的是英文,英文是不会自动换行的,所以你需要让他自动换行添加如下代码即可:

word-wrap:break-word;
word-break:break-all;

 

当然也可以使用插件clamp.js

 

 

转载于:https://www.cnblogs.com/jing-tian/p/11048853.html

相关文章:

  • 浏览器常用快捷键
  • 脾气
  • vue常用的修饰符
  • 为 Linux 应用程序编写 DLL
  • 3045流程设计
  • idea安装vue插件
  • 【BUAA-OO】第四单元作业总结
  • python学习-字符和编码
  • new Date() 在safari上遇到的问题
  • Linux安全加固
  • 解决打开IE报错“无法启动...丢失api-ms-win-core-path-l1-1-0.dll”的问题
  • 【JVM】符号引用和直接引用
  • Thread Future模式
  • 异常检测
  • monkey性能稳定性测试使用教程
  • [PHP内核探索]PHP中的哈希表
  • “大数据应用场景”之隔壁老王(连载四)
  • Android交互
  • ES6系列(二)变量的解构赋值
  • GraphQL学习过程应该是这样的
  • iBatis和MyBatis在使用ResultMap对应关系时的区别
  • IP路由与转发
  • Java 11 发布计划来了,已确定 3个 新特性!!
  • java多线程
  • jQuery(一)
  • MySQL用户中的%到底包不包括localhost?
  • php的插入排序,通过双层for循环
  • sublime配置文件
  • 包装类对象
  • 搭建gitbook 和 访问权限认证
  • ------- 计算机网络基础
  • 精益 React 学习指南 (Lean React)- 1.5 React 与 DOM
  • 前端设计模式
  • 使用 Docker 部署 Spring Boot项目
  • 世界上最简单的无等待算法(getAndIncrement)
  • 树莓派 - 使用须知
  • 小程序开发中的那些坑
  • 树莓派用上kodexplorer也能玩成私有网盘
  • 说说我为什么看好Spring Cloud Alibaba
  • 整理一些计算机基础知识!
  • ​linux启动进程的方式
  • # 手柄编程_北通阿修罗3动手评:一款兼具功能、操控性的电竞手柄
  • $NOIp2018$劝退记
  • (MonoGame从入门到放弃-1) MonoGame环境搭建
  • (待修改)PyG安装步骤
  • (非本人原创)史记·柴静列传(r4笔记第65天)
  • (附源码)springboot 智能停车场系统 毕业设计065415
  • (附源码)计算机毕业设计SSM疫情下的学生出入管理系统
  • (十)DDRC架构组成、效率Efficiency及功能实现
  • (转)Linux下编译安装log4cxx
  • (转)编辑寄语:因为爱心,所以美丽
  • ***检测工具之RKHunter AIDE
  • .\OBJ\test1.axf: Error: L6230W: Ignoring --entry command. Cannot find argumen 'Reset_Handler'
  • .equal()和==的区别 怎样判断字符串为空问题: Illegal invoke-super to void nio.file.AccessDeniedException
  • .NET Core 成都线下面基会拉开序幕