在我们的日常开发工作中,文本溢出截断省略是很常见的一种需考虑的业务场景细节。看上去 “稀松平常” ,但在实现上却有不同的区分,是单行截断还是多行截断?多行的截断判断是基于行数还是基于高度?这些问题之下,都有哪些实现方案?他们之间的差异性和场景适应性又是如何?凡事就怕较真,较真必有成长。本文试图通过编码实践,给出一些答案。
看似十分简单的标题截断效果,但是竟然没有一个统一 CSS 属性实现标准,需要用到一些奇淫妙计来实现,一般来说,在做这样文字截断效果时我们更多是希望:
兄弟们,你们看着啊总结:核心:截断 word-wrap: break-word;也可以写成overflow-wrap: break-word;一样的哈, word-break: break-all;核心是:内容在宽度的邻界点就自动换行了哈(注意点,也就是说宽度邻界点那里放不下将要显示在这里的字符就换航了呀注意点来了,单词呢怎么说?也截断,放不下的汉子和单词都截断 效果:
最近在做一个自适应的网站,经常遇到需要文本的溢出地方,我写了一个CSS简单设置文本溢出的方法:用css实现文本溢出div显示省略号 但是IE只能设置单行溢出隐藏,Webkit内核浏览器才支持多行溢出,于是找到了这款插件,能够达到不错的效果,用Chrome自带的翻译加上自己的理解写了这么一个教程,希望能对大家有所帮助。
文本溢出截断省略是比较常见的业务场景,主要分为单行文本溢出截断省略与多行文本溢出截断省略,单行的截断方案比较简单,多行截断相对比较复杂。
通常,我们希望限制元素相对于其父元素的宽度,同时使其具有动态性。因此,有一个基础宽度或高度的能力,使其扩展的基础上,可用的空间。比如说,我们有一个按钮,它的宽度应该是最小的,不应该低于它的宽度。这就是最大和最小属性变得方便的地方。
首先,我们需要清楚width默认值就是auto,所以不用去人为写代码控制其宽度自动哦。
选中不在此范围内的元素,例如:div:not(:last-child),选中除最后一个div的所有div元素
在页面布局中,我们经常会遇到/使用这么一类常见的布局,也就是列表内容水平居中于容器中,像是这样:
很多时候,我们希望有一种方法可以避免某种CSS问题或行为的发生。我们知道,网页内容是动态的,网页上的东西可以改变,从而增加了出现CSS问题或奇怪行为的可能性。
最近开源了一个 Vue 组件,还不够完善,欢迎大家来一起完善它,也希望大家能给个 star 支持一下,谢谢各位了。
2,条纹表格:通过 .table-striped 类可以给 之内的每一行增加斑马条纹样式。03CSS表格布局实践如何实现上图所示效果:左右两列的列宽由列内最宽单元格的宽度决定,进度条列占据剩余空间。(兼容到IE8就好了)04CSS 水平居中与垂直居中的16个方法元素高度可以动态改变, 不需再CSS中定义, 如果父元素没有足够空间时, 该元素内容也不会被截断。01分享10个超实用的高级 CSS 技巧CSS attr() 函数允许开发人员检索样式表中HTML属性的值。在下面的示例中,我使用 attr() 函数使用其 data-value 属性来显示 span HTML 元素的 ::after 伪类的文本内容。01【CSS】1965- 分享10个超实用的高级 CSS 技巧CSS(层叠样式表)是一个强大的工具,可以让开发人员设计出漂亮的网页。在今天这篇本文章中,我们将分享10个 CSS 高级技巧,它们可以将你的网页设计技能提升到一个新的水平。01ECharts 提示框组件Tooltip属性大全(包含文本注释)附图:提示框浮层内容格式器 formatter: '{b0}: {c0}{b1}: {c1}' 格式化01CSS控制文本超出指定宽度显示省略号和文本不换行需要你注意的是,这个CSS样式只对单行的文字的效,如果你想把它用在多行上,也只有第一行有作用的。 这个写法只有IE会有“…”,02css设计中的不变与可变06css设计中的不变与可变如果重构分里子与面子的话,那么html应该是负责里子的,而css就是负责面子了。在上篇html结构的拆与合说了html之后,我们继续来说下css,这次我们从可变与不变的角度分析。01两栏自适应布局延展到多栏自适应布局说到两栏自适应布局,估计很多人看到这样类似的文章,我经常也看过,但是那些实现方式跟我所经常使用的两种方法不一样,经常使用的意思是,我一遇到这种布局,立马想到的就是使用这种。就像我们拿东西,我们立马就会想到用手拿,当然还有很多方式可以拿到,比如用嘴刁。 所以,当我们看到多种实现方式的时候,一定要学会比较,然后选择其中一两种作为常用布局记到深处,就是想都不用想就用的。06图文并茂让你必须弄懂 viewport简单的说就是你的显示器的分辨率用物理像素描述的,而横向和纵向的分辨率值可以用screen.width/height打印出来。它们是显示器的功能,而不是浏览器的功能。不管窗口放大缩小,screen.width/height是不会变的。(IE7、8是例外,均以CSS像素为单位进行测量)。除非设置分辨率,让LED液晶板重新划分物理像素点,否则就认为分辨率不变。01CSS- 文本超出指定宽度后隐藏并显示为省略号overflow:hidden;/* 内容超出宽度时隐藏超出部分的内容 */02前端面试之CSS重点概念精讲今天,我们又开辟了一个新的篇幅 --「前端面试」。即是把一些平时常用的概念和工具方法整理和罗列,也算是一种变向的「未雨绸缪」。03CSS技巧和经验1. 如何清除图片下方出现几像素的空白间隙 方法1 img { display: block; } 方法2 img { vertical-align: top; } // 除了top值,还可以设置为text-top | middle | bottom | text-bottom,甚至特定的<length>和<percentage>值都可以 方法3 // #test为img的父元素 #test { fo07CSS 单/多行文本溢出样式这样就很容易的实现了多行文本溢出显示省略号的效果,不过这个方案有个不好的点就是兼容性不好03翻译:如何使用CSS实现多行文本的省略号显示本文翻译自CSS Ellipsis: How to Manage Multi-Line Ellipsis in Pure CSS,文中某些部分有些许改动,并添加译者的一些感想,请各位读者谅解。 合理的截断多行文本是件不容易的事情,我们通常采用几种方法解决: overflow: hidden直接隐藏多余的文本 text-overflow: ellipsis只适用于单行文本的处理 各种比较脆弱的javascript实现。之所以说这种实现比较脆弱是由于需要文本长度的变化时刻得到回流(relayout)后的布06凡是可以用CSS实现的,最终都会用CSS实现凡是可以用 JavaScript 来写的应用,最终都会用 JavaScript 来写。— Atwood定律05让你兴奋不已的13个CSS技巧🤯快来免费体验ChatGpt plus版本的,我们出的钱 体验地址:https://chat.waixingyun.cn 可以加入网站底部技术群,一起找bug,另外新版作图神器已上线 https://cube.waixingyun.cn/home05CSS 魔法 | 超强的文本超出提示效果在 mac 文件管理中有这样一个小细节。 当文件名不超过一行时,完整显示,此时鼠标放上去无任何提示 当文件名超过一行时,出现省略号,此时鼠标放上去提示显示完整文件名 img 一个很微妙但非常 人性化01css截断长文本显示实现 截断长文本显示处理,以前是通过后台的截取,但这种方法容易丢失数据,不利于SEO。 而通过前端css的截断,则灵活多变,可统一运用与整个网站。 这项技术主要运用了text-overflow属性,这个虽是css3的属性,但是在各大浏览器却兼容 非常好,ie6系列全部兼容。 .e{ display:inline-block;width: 40px;white-space: nowrap;text-overflow: ellipsis;overflow: hidden;07CSS自动换行word-break:break-all和word-wrap:break-word都是能使其容器如DIV的内容自动换行。 它们的区别就在于: 1.word-break:break-all 例如div宽200px,它的内容就会到200px自动换行,如果该行末端有个英文单词很长(congratulation等),它会把单词截断,变成该行末端为conra(congratulation的前端部分),下一行为tulation(conguatulation)的后端部分了。 2.word-wrap:break-wo03HTML元素中有中文、英文、符号、数字。第一行没排满就自动换行的解决办法:word-break:break-all的使用word-break: break-all 是一个CSS属性,用于控制文本在容器中的换行方式。它的作用是强制在任意字符之间进行换行,即使这样可能会导致单词被分割。02不要在按钮、链接或任何其他文本容器上使用固定的 CSS 高度或宽度尽管一些网页设计工具为按钮等元素指定了 CSS 高度值,但设置高度或最大高度实际上可能会违反 WCAG 2.2 Success Criterion 1.4.4 Resize Text.01EMLOG教程 - 侧边栏文章标题字数修改方法本站在修改侧边栏的时候,进行了侧变栏内容固定浮动跟随浏览器,但是问题来了,固定浮动侧边栏之后随机文章的比较长的标题会凸出去外边、或者两行显示,感觉很难看的样子,所以寻找办法修改标题字数使之截断过长的标题!03分享14个你可能还未用上但又实用的CSS属性:in-range 和 :out-of-range 是 CSS 中的伪类,它们可以用来样式化表单控件中的输入值。04【布局】493- 工作中遇到的特殊CSS布局虽然有时确实会让我们花蛮多时间去实现,但从一方面想这也是个机会,让我们更深入了解的浏览器布局方式。01文字溢出边缘羽化 CSS Mask 实现在很多时候都需要处理文字的溢出,尤其是对单行网格处理时,需要避免文字过长导致容器撑坏的情况。一般会固定文字最大宽度和 overflow: hidden; text-overflow: ellipsis 让溢出的文字显示成 ...。但是现在可以用 CSS 的 mark 属性,让溢出的文字边缘羽化。03重新认识visibility 原原先只是记住了display:none不点位,visibility:hidden要占位显示。02react-native 之布局总结前言 之前我们讲了很多react-native的基础控件,为了方便大家的理解,我们来对react-native的布局做一个总结,观看本节知识,你将看到。 宽度单位和像素密度 flex的布局 图片布局 绝对定位和相对定位 padding和margin的区别和应用场合 文本元素 宽度单位和像素密度 我们知道在Android中是用设备像素来作为单位的(后面又出现了百分比这么 一个概念),ios中后面也有了Auto Layout和1倍图,二倍图等概念(xib+storyboard)。然而react的宽度不支持百分比08深入扩展文本溢出解决方案在实际的开发中不管是移动端还是 PC 端都会遇到文本太长,因为宽度不够导致我们需要设置成省略号。文本就文本溢出做一个总结,希望对你们开发过程中有帮助。02关于FF下截取后省略号的问题本文讲述了一位同学在排查关于FF下截取后省略号的问题时,发现使用text-overflow:ellipsis属性无法在FF下实现省略号效果。他通过使用:after伪类来模拟FF下的省略号,并给content一个…的值,hack解决宽度问题,从而让样式看起来更舒服。同时,提醒可能有更好得办法解决此问题。06让div水平垂直居中的几种方法利用 CSS 来实现对象的垂直居中有许多不同的方法,比较难的是选择那个正确的方法。使用 CSS 实现水平居中很容易,但要实现垂直居中并不容易。而且有些方法在一些浏览器中无效。下面我们看一下使对象垂直集中的几种不同方法,以及它们各自的优缺点。02移动 web 开发最佳实践01CSS 换行_css不允许换行4、最近遇到的一个需求,v-html渲染文本的时候要求,单行里面有数字的时候文字左右对齐,间距自动拉伸04如何实现文本内容折叠并显示“...查看全部”?多行文本超过指定行数隐藏超出部分并显示“...查看全部”是一个常遇到的需求,网上也有人实现过类似的功能,不过还是想自己写写看,于是就写了一个vue的组件,本文简单介绍一下实现思路。02扫码添加站长 进交流群领取专属 10元无门槛券手把手带您无忧上云相关资讯纯 CSS 实现多行文字截断让div水平垂直居中的几种方法HTML标签:无序HTML列表标签最全的实现垂直居中的方法WEB开发技术基础知识整理——CSS热门标签更多标签云服务器ICP备案实时音视频即时通信 IM对象存储活动推荐运营活动广告关闭领券
如何实现上图所示效果:左右两列的列宽由列内最宽单元格的宽度决定,进度条列占据剩余空间。(兼容到IE8就好了)
元素高度可以动态改变, 不需再CSS中定义, 如果父元素没有足够空间时, 该元素内容也不会被截断。
CSS attr() 函数允许开发人员检索样式表中HTML属性的值。在下面的示例中,我使用 attr() 函数使用其 data-value 属性来显示 span HTML 元素的 ::after 伪类的文本内容。
CSS(层叠样式表)是一个强大的工具,可以让开发人员设计出漂亮的网页。在今天这篇本文章中,我们将分享10个 CSS 高级技巧,它们可以将你的网页设计技能提升到一个新的水平。
附图:提示框浮层内容格式器 formatter: '{b0}: {c0}{b1}: {c1}' 格式化
需要你注意的是,这个CSS样式只对单行的文字的效,如果你想把它用在多行上,也只有第一行有作用的。 这个写法只有IE会有“…”,
如果重构分里子与面子的话,那么html应该是负责里子的,而css就是负责面子了。在上篇html结构的拆与合说了html之后,我们继续来说下css,这次我们从可变与不变的角度分析。
说到两栏自适应布局,估计很多人看到这样类似的文章,我经常也看过,但是那些实现方式跟我所经常使用的两种方法不一样,经常使用的意思是,我一遇到这种布局,立马想到的就是使用这种。就像我们拿东西,我们立马就会想到用手拿,当然还有很多方式可以拿到,比如用嘴刁。 所以,当我们看到多种实现方式的时候,一定要学会比较,然后选择其中一两种作为常用布局记到深处,就是想都不用想就用的。
简单的说就是你的显示器的分辨率用物理像素描述的,而横向和纵向的分辨率值可以用screen.width/height打印出来。它们是显示器的功能,而不是浏览器的功能。不管窗口放大缩小,screen.width/height是不会变的。(IE7、8是例外,均以CSS像素为单位进行测量)。除非设置分辨率,让LED液晶板重新划分物理像素点,否则就认为分辨率不变。
overflow:hidden;/* 内容超出宽度时隐藏超出部分的内容 */
今天,我们又开辟了一个新的篇幅 --「前端面试」。即是把一些平时常用的概念和工具方法整理和罗列,也算是一种变向的「未雨绸缪」。
1. 如何清除图片下方出现几像素的空白间隙 方法1 img { display: block; } 方法2 img { vertical-align: top; } // 除了top值,还可以设置为text-top | middle | bottom | text-bottom,甚至特定的<length>和<percentage>值都可以 方法3 // #test为img的父元素 #test { fo
这样就很容易的实现了多行文本溢出显示省略号的效果,不过这个方案有个不好的点就是兼容性不好
本文翻译自CSS Ellipsis: How to Manage Multi-Line Ellipsis in Pure CSS,文中某些部分有些许改动,并添加译者的一些感想,请各位读者谅解。 合理的截断多行文本是件不容易的事情,我们通常采用几种方法解决: overflow: hidden直接隐藏多余的文本 text-overflow: ellipsis只适用于单行文本的处理 各种比较脆弱的javascript实现。之所以说这种实现比较脆弱是由于需要文本长度的变化时刻得到回流(relayout)后的布
凡是可以用 JavaScript 来写的应用,最终都会用 JavaScript 来写。— Atwood定律
快来免费体验ChatGpt plus版本的,我们出的钱 体验地址:https://chat.waixingyun.cn 可以加入网站底部技术群,一起找bug,另外新版作图神器已上线 https://cube.waixingyun.cn/home
在 mac 文件管理中有这样一个小细节。 当文件名不超过一行时,完整显示,此时鼠标放上去无任何提示 当文件名超过一行时,出现省略号,此时鼠标放上去提示显示完整文件名 img 一个很微妙但非常 人性化
实现 截断长文本显示处理,以前是通过后台的截取,但这种方法容易丢失数据,不利于SEO。 而通过前端css的截断,则灵活多变,可统一运用与整个网站。 这项技术主要运用了text-overflow属性,这个虽是css3的属性,但是在各大浏览器却兼容 非常好,ie6系列全部兼容。 .e{ display:inline-block;width: 40px;white-space: nowrap;text-overflow: ellipsis;overflow: hidden;
word-break:break-all和word-wrap:break-word都是能使其容器如DIV的内容自动换行。 它们的区别就在于: 1.word-break:break-all 例如div宽200px,它的内容就会到200px自动换行,如果该行末端有个英文单词很长(congratulation等),它会把单词截断,变成该行末端为conra(congratulation的前端部分),下一行为tulation(conguatulation)的后端部分了。 2.word-wrap:break-wo
word-break: break-all 是一个CSS属性,用于控制文本在容器中的换行方式。它的作用是强制在任意字符之间进行换行,即使这样可能会导致单词被分割。
尽管一些网页设计工具为按钮等元素指定了 CSS 高度值,但设置高度或最大高度实际上可能会违反 WCAG 2.2 Success Criterion 1.4.4 Resize Text.
本站在修改侧边栏的时候,进行了侧变栏内容固定浮动跟随浏览器,但是问题来了,固定浮动侧边栏之后随机文章的比较长的标题会凸出去外边、或者两行显示,感觉很难看的样子,所以寻找办法修改标题字数使之截断过长的标题!
:in-range 和 :out-of-range 是 CSS 中的伪类,它们可以用来样式化表单控件中的输入值。
虽然有时确实会让我们花蛮多时间去实现,但从一方面想这也是个机会,让我们更深入了解的浏览器布局方式。
在很多时候都需要处理文字的溢出,尤其是对单行网格处理时,需要避免文字过长导致容器撑坏的情况。一般会固定文字最大宽度和 overflow: hidden; text-overflow: ellipsis 让溢出的文字显示成 ...。但是现在可以用 CSS 的 mark 属性,让溢出的文字边缘羽化。
原先只是记住了display:none不点位,visibility:hidden要占位显示。
前言 之前我们讲了很多react-native的基础控件,为了方便大家的理解,我们来对react-native的布局做一个总结,观看本节知识,你将看到。 宽度单位和像素密度 flex的布局 图片布局 绝对定位和相对定位 padding和margin的区别和应用场合 文本元素 宽度单位和像素密度 我们知道在Android中是用设备像素来作为单位的(后面又出现了百分比这么 一个概念),ios中后面也有了Auto Layout和1倍图,二倍图等概念(xib+storyboard)。然而react的宽度不支持百分比
在实际的开发中不管是移动端还是 PC 端都会遇到文本太长,因为宽度不够导致我们需要设置成省略号。文本就文本溢出做一个总结,希望对你们开发过程中有帮助。
本文讲述了一位同学在排查关于FF下截取后省略号的问题时,发现使用text-overflow:ellipsis属性无法在FF下实现省略号效果。他通过使用:after伪类来模拟FF下的省略号,并给content一个…的值,hack解决宽度问题,从而让样式看起来更舒服。同时,提醒可能有更好得办法解决此问题。
利用 CSS 来实现对象的垂直居中有许多不同的方法,比较难的是选择那个正确的方法。使用 CSS 实现水平居中很容易,但要实现垂直居中并不容易。而且有些方法在一些浏览器中无效。下面我们看一下使对象垂直集中的几种不同方法,以及它们各自的优缺点。
4、最近遇到的一个需求,v-html渲染文本的时候要求,单行里面有数字的时候文字左右对齐,间距自动拉伸
多行文本超过指定行数隐藏超出部分并显示“...查看全部”是一个常遇到的需求,网上也有人实现过类似的功能,不过还是想自己写写看,于是就写了一个vue的组件,本文简单介绍一下实现思路。
领取专属 10元无门槛券
手把手带您无忧上云