当有多个flex嵌套,而又有子元素需要单行省略的时候,你会发现~单行省略无效了,如图:

想要的效果:   而实际的效果:

 

 

 

 不仅没有单行省略,还把右箭头给挤没了。

 

2、页面html css

 

 

3、解决办法

方案一: 给.item-value的父级.mark-info设置宽度min-width:0; 或者设置overflow:hidden

 

 

注:min-width、max-width、width属性都可以设置,但因为文字的长度不定设置width或者max-width都有可能遮住有效区域,所以建议使用min-width: 0比较符合。

原理:
flex属性是flex-growflex-shrink 和 flex-basis的简写,默认值为0 1 auto。后两个属性可选,具体可参考https://www.runoob.com/w3cnote/flex-grammar.html讲解

<' flex-grow '>:用来指定扩展比率,即剩余空间是正值时此「flex子项」相对于「flex容器」里其他「flex子项」能分配到空间比例。
在「flex」属性中该值如果被省略则默认为1

<' flex-shrink '>:用来指定收缩比率,即剩余空间是负值时此「flex子项」相对于「flex容器」里其他「flex子项」能收缩的空间比例。
在收缩的时候收缩比率会以伸缩基准值加权
在「flex」属性中该值如果被省略则默认为1

<' flex-basis '>:用来指定伸缩基准值,即在根据伸缩比率计算出剩余空间的分布之前,「flex子项」长度的起始数值。
在「flex」属性中该值如果被省略则默认为「0%」
在「flex」属性中该值如果被指定为「auto」,则伸缩基准值的计算值是自身的 <' width '> 设置,如果自身的宽度没有定义,则长度取决于内容。

 

当我们设置white-space:nowrap,项目控件由于不能计算多余的空间导致无法收缩了。此时我们设置固定尺寸就可以收缩了

 

 方案二: 改变单行省略的写法

超出一行显示省略号不仅仅是使用white-space:nowrap属性,我们还可以使用下图代码达到效果,而且通过 -webkit-line-clamp可以来设计几行才出现省略号的情况。但由于存在兼容问题建议移动端使用

 .item-value {
   overflow: hidden;    display: -webkit-box;    -webkit-line-clamp: 1;    -webkit-box-orient: vertical;
}

  

当flex遇到white-space:nowrap,超出省略无效的问题的更多相关文章

  1. 当flex遇到white-space:nowrap,超出省略无效的问题

    当有多个flex嵌套,而又有子元素需要单行省略的时候,你会发现~单行省略无效了,如图: 想要的效果: 而实际的效果: 不仅没有单行省略,还把右箭头给挤没了。 2、页面html+css 3、解决办法 方

  2. javascript – text-overflow省略号没有“white-space:nowrap”?

    我也会考虑JS解决方案.解决方法没有办法使用纯CSS.这是怪异和悲伤.当您希望浏览器在漏出容器时可能会溢出文本的多行文本“省略”,我经常希望自己.

  3. 跨平台开发框架Ionic学习之路------4(使用angularjs实现滚动条定位)

    解决滚动条定位有两种方式1、采用描标记的形式滚动到指定的区域。需要跟html标签加上id属性。例如然后在js脚本里面这样跳转$scope.toView;需要跳转到对应位置的html标签ID假如这个页面的滚动条很长,多次跳转之后就会发现页面不能上下滚动了,可能是应用标记位置之后浏览器url后面追加了##xxx=xx这样的参数导致的,如何修复不明。欢迎加入icon新手学习群,我们一起解决学习过程中遇到的问题。

  4. javascript – jQuery:实际的div宽度

    我有两个

  5. Cocos2d-x 3.2编写常用UI组件 《Cocos2d-x 3.2编写常用UI组件 带滚动的表格GridView

    按照惯例先发上效果图:正文:一说起滚动效果大家可能会联想到Cocos2d-x给我们提供的ScrollView。我一开始也是打算用ScrollView来实现的,但是用着用着发现出现了各种莫名其妙的错误,所以只好自己重新写一个Node,通过onTouchBegan和onTouhMoved两个事件回调来实现滚动的效果。GridView使用说明:1.利用GridView::create来创建一个GridView,row和column分别指定行数和列数。

  6. 如何在jQuery-UI中使用draggable自定义帮助程序

    我想创建一个自定义元素,其中包含使用辅助函数从“被拖动”元素中获取的文本.我的问题是ui未定义,所以我不知道如何掌握拖拽的来源.解决方法您正在应用的辅助功能isinvokedthefollowingway:这意味着这指的是你想要在该函数中使用的.draggable,例如:Youcantestitouthere.

随机推荐

  1. css绝对定位如何在不同分辨率下的电脑正常显示定位位置?(一定要看!)

    这篇文章主要介绍了css绝对定位如何在不同分辨率下的电脑正常显示定位位置,本文首先解释了常见的电脑分辨率,为了页面在不同的分辨率下正常显示,要给页面一个安全宽度,再去使用绝对定位,具体操作步骤大家可查看下文的详细讲解,感兴趣的小伙伴们可以参考一下。

  2. CSS中实现动画效果-附案例

    这篇文章主要介绍了 CSS中实现动画效果并附上案例代码及实现效果,就是CSS动画样式处理,动画声明需要使用@keyframes name,后面的name是人为定义的动画名称,下面我们来看看文章的具体实现内容吧,需要的小伙伴可以参考一下

  3. CSS多级数字序号的目录列表(2.2.1. 2.2.2 列表序号)

    这篇文章主要介绍了CSS多级数字序号的目录列表(2.2.1. 2.2.2 列表序号),通过css代码定义将数字多级列表展示出来,,需要的朋友可以参考下

  4. CSS position属性和实例应用演示

    这篇文章主要介绍了CSS position属性和实例应用演示,absolute(绝对定位),relative(相对定位),relative与absolute的结合使用以及fixed(固定定位),需要的朋友可以参考下

  5. css中使用rgba和opacity设置透明度的区别(附图)

    这篇文章主要介绍了css中使用rgba和opacity设置透明度的两种方法,通过实例演示解释了两者之间的差别,需要的朋友可以参考下

  6. html+css 清除浮动的相关技巧心得

    下面小编就为大家带来一篇html+css 清除浮动的相关技巧心得。小编觉得挺不错的,现在分享给大家,给大家一个参考

  7. 简单介绍CSS设置打印页面的方法及css里media的使用

    这篇文章主要介绍了基于CSS设置打印页面简单介绍及css里media的使用 的相关资料,需要的朋友可以参考下

  8. CSS三大特性继承性、层叠性和优先级详解

    本文详细讲解了CSS三大特性继承性、层叠性和优先级,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

  9. CSS清除浮动方法小结

    本文主要介绍了CSS解决浮动,清除浮动的几种方法:1、设置父元素高度;2、overflow;3、增加子元素(块级),并且设置其clear属性值为both来解决(隔墙法、内墙法);4、使用after或before伪对象清除浮动。下面跟着小编一起来看下吧

  10. 我就是要用CSS实现九宫格图

    本文介绍的就是我们最熟悉的老朋友,CSS。不讲枯燥的语法,抛开js,让我们一起来看业务中那别致的纯CSS实现,让我们一起来追求那更好的页面实现,希望我带着你走完这段旅程后,你能收获一些惊喜甚至灵感,感兴趣的小伙伴们可以参考一下

返回
顶部