首页 > 其他分享 >css_flex盒子内的元素文本超出部分省略

css_flex盒子内的元素文本超出部分省略

时间:2023-11-09 11:13:06浏览次数:37  
标签:flex 省略 d8 超出 d7 overflow 文本 css

  • 搜索文本超出部分省略, 可以搜索到如下代码
white-space: nowrap;
/*超出的空白区域不换行*/
overflow: hidden;
/*超出隐藏*/
text-overflow: ellipsis;
/*文本超出显示省略号*/
  • 但是如果某个元素是flex盒子的子项, 且宽度自适应的话, 想要实现内部元素的的文本省略, 会发现子元素会被文本撑开
<div id="d5">
  <div id="d6"></div>
  <div id="d7">
    <div id="d8">
      Lorem ipsum, dolor sit amet consectetur adipisicing elit. Sed delectus asperiores repellendus eligendi minima
      odit ullam facilis rerum praesentium, deserunt veritatis at voluptatibus et quae nihil accusantium nemo eos
      laboriosam excepturi cumque aliquid voluptate, fugit nam. Veniam maiores eum voluptatem magni exercitationem
      inventore veritatis aut tempora quae quisquam, perspiciatis reiciendis!
    </div>
  </div>
</div>
#d5 {
  width: 500px;
  height: 100px;
  display: flex;
}

#d6 {
  flex-grow: 0;
  flex-shrink: 0;
  flex: 0 0 100px;
  background-color: lightblue;
}

#d7 {
  /* flex-grow: 1; */
  flex: 1 0 0;
  background-color: lightcoral;
}

#d8 {
  width: 100%;
  white-space: nowrap;
  /*超出的空白区域不换行*/
  overflow: hidden;
  /*超出隐藏*/
  text-overflow: ellipsis;
  /*文本超出显示省略号*/
}

  • 如上所示, #d5,#d6,#d7 均是模拟布局的元素, #d7作为flex元素的子元素自适应宽度, 现使用#d7作为容器, #d8设置宽度为100%时, 其内部文本宽度大于#d8时, #d8宽度会被内容撑开
  • 参考博文解决flex布局内容超出盒子宽度问题
  • 设置#d7同样为flex容器, #d8成为了flex-item, 但是仅仅这样还不够, 需要设置#d8width属性, 令其自适应宽度
#d7 {
  /* flex-grow: 1; */
  flex: 1 0 0;
  background-color: lightcoral;
  display: flex;
}

#d8 {
  width: 0;
  flex-grow: 1;
  white-space: nowrap;
  /*超出的空白区域不换行*/
  overflow: hidden;
  /*超出隐藏*/
  text-overflow: ellipsis;
  /*文本超出显示省略号*/
}

  • 需要注意: 经测试, width属性不可使用flex-basis代替

标签:flex,省略,d8,超出,d7,overflow,文本,css
From: https://www.cnblogs.com/isAyi/p/17819175.html

相关文章

  • CSS样式的高级选择器
    高级选择器前面也介绍了一些简单的选择器但是这些简单的选择器,无法更加准确选择目标元素,所以需要用到高级选择器。交集选择器交集选择器是同时满足多个选择器筛选的条件的才能被选中,即两个集合中相同的元素才能被选中。语法:是两个选择器之间不能有任何空格举个例子:1<!DOC......
  • CSS学习01
    文字大小:font-size;xxpx文字粗细:font-weight;文字倾斜:font-style:normal(默认),italic(倾斜)字体样式:font-family文本样式:1.首行缩进:text_indent:2em; 首行缩进两个字符2.水平对齐方式:text-align:center(水平居中)或left或right;3.文本修饰:text-decora......
  • flex布局
    flex布局flex使用后部分行内和块级元素,均可设置宽高div{display:flex;width:400px;height:400px;background-color:orange;}span{width:100px;height:50px;......
  • 11月7日css介绍、基本格式、样式、选择器
    目录1.css介绍2.css基本格式3.css的几种引入方式1.行内样式2.内部样式3.外部样式css选择器基本选择器1.元素(标签)选择器2.id选择器3.类选择器通用选择器组合选择器1.后代选择器2.子元素选择器3.相邻兄弟选择器通用兄弟选择器属性选择器分组选择器伪类选择器第一个实例给未访问的链......
  • 弹性盒子flex布局轻松实现瀑布流
    这里介绍下简单实现瀑布流的方法,适合一次性加载完的数据列表。如果是分页加载那就需要更复杂的计算了,但也可以在本案例的基础上进行扩展。关键代码:js部分:letcolumCount=2letgoodsList=this.properties.goodsList//创建跟列数相同的新列表letwaterFallArr=newArr......
  • scss 通过@for循环动态创建多个class
    项目中有些全局的.scss文件中一些关于设置width的class,如下:.w50{width:50px;}.w60{width:60px;}.w70{width:70px;}.w80{width:80px;}.w90{width:90px;}.w100{width:100px;}.w110{width:110px;}.w120{width:120px;}.w130......
  • app直播源代码,css给数字或文字在鼠标悬停时添加下划线动画
    app直播源代码,css给数字或文字在鼠标悬停时添加下划线动画html代码: <h1 class="row center " style="font-size: 2em;">css给数字或文字在鼠标悬停时添加下划线动画</h1><div class="row center text"><span>春有百花秋望月</span>,<span>夏有冷风冬听雪</spa......
  • CSS绘制无状态的音频波形图
    效果代码这是从codepen参考过来的一段代码,自己diy了一下。可以根据需求修改显示的条数、宽度、颜色、跳动频率及幅度。importReactfrom'react';constSoundWave=()=>{return(<divclass="sound-wave"><divclass="sound-bar"></div>......
  • 搜索文档树、bs4其他用法、css选择器、selenium基本使用、selenium其他用法
    搜索文档树#1find_all:找所有列表#2find找一个Tag类的对象find和find_allfrombs4importBeautifulSouphtml_doc="""<html><head><title>TheDormouse'sstory</title></head><body><pclass="title&......
  • 21 个最佳 Javascript IDE 和代码编辑器 [CSS、HTML、JavaScript]
    这是我们挑选的21个最佳JavaScriptIDE和源代码编辑器。目录什么是IDE选择正确的开发环境时要寻找什么?免费的最佳JavascriptIDE最佳高级JavascriptIDE结论:最佳JavaScriptIDE是哪个?常见问题解答:最佳JavascriptIDE如今,Javascript在前端开发中越来越流行。您......