css文字自适应宽度动态出现省略号...

前言

在列表排行榜中通常会出现的一个需求:从左到右依次是名次、头像、昵称、徽标、分数。徽标可能会有多个或者没有徽标,徽标长度是动态的,昵称如果过长要随着有无徽标进行动态截断出现省略号。如下图布局所示(花里胡哨的底色是为了看的更清楚,咱忍忍。。。)

一、实现效果

  • 多个徽标

        

  • 一个徽标

         

  • 没有徽标

        

 影响中间文字部分动态截断实现方法:

  • 设置昵称和徽标这个整体div的宽度;​​​​​​​
  • 方法1️⃣:昵称部分div设置为 flex-shrink: 1 自动收缩宽度;
  • 方法2️⃣:昵称部分div设置为 flex: 1;min-width: 0;

二、结构拆分

        

  1. 使用flex左右布局,分数之前为左边,分数固定最大长度为右边;
  2. 左边的内容继续使用flex布局排列,固定名次、头像宽度;
  3. 昵称和徽标的模块使用flex布局,给定一个大概宽度,昵称设置截断省略;

三、全部代码

1.整体结构

代码如⬇️:

  <!-- 整行 --><div class="item-wrapper"><div class="item-left"><div class="item-left-num">1</div><image class="item-left-avatar" src="xxx" /><div class="item-left-text"><div class="item-left-name">lemon是我的名字lemon是我的名字lemon是我的</div><image class="item-left-icon item-left-level" src="xxx" /><image class="item-left-icon item-left-fan" src="xxx" /></div></div><div class="item-right">666</div></div>

2.css样式

代码如下⬇️:

.item-wrapper {width: 100%;height: 62pit;flex: 0 0 auto;overflow: hidden;background-color: gray;padding: 0 16pit;display: flex;flex-direction: row;justify-content: space-between;align-items: center;
}.item-left {overflow: hidden;display: flex;flex-direction: row;align-items: center;justify-content: flex-start;background-color: rgb(139, 201, 237);
}.item-left-num {flex: 0 0 auto;font-family: PingFangSC-Medium;font-size: 20pit;color: #333;font-weight: 700;line-height: 62pit;letter-spacing: 0;width: 26pit;text-align: center;background-color: rgb(225, 131, 197);
}.item-left-avatar {flex: 0 0 auto;width: 38pit;height: 38pit;background-color: #fff;background-repeat: no-repeat;background-position: center center;background-size: cover;border-radius: 36px;margin-left: 8pit;
}.item-left-text {display: flex;flex-direction: row;align-items: center;width: 55vw;background-color: #333;
}.item-left-name {font-family: PingFangSC-Medium;font-weight: 500;font-size: 14pit;line-height: 62pit;color: #333;letter-spacing: 0;margin-left: 8pit;// 方式1️⃣// flex: 1;// min-width: 0;// 方式2️⃣flex-shrink: 1; // 自动收缩宽度overflow: hidden;text-overflow: ellipsis;white-space: nowrap;background-color: aqua;
}.item-left-icon {height: 16pit;background-color: #fff;background-repeat: no-repeat;background-position: center center;background-size: cover;margin-left: 4pit;
}.item-left-level {flex: 0 0 auto;width: 32pit;
}.item-left-fan {flex: 0 0 auto;width: 52pit;
}.item-right {flex: 0 0 auto;font-family: PingFangSC-Medium;font-weight: 400;line-height: 62pit;font-size: 12pit;color: #666;letter-spacing: 0;text-align: right;width: 52pit;margin-left: 16pit;background-color: rgb(240, 171, 229);
}

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

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

相关文章

SpringSecurity中文文档(Servlet OAuth 2.0 Login)

OAuth 2.0 Login OAuth 2.0 Login 功能允许应用程序让用户通过使用 OAuth 2.0 Provider (如 GitHub)或 OpenID Connect 1.0 Provider (如 Google)的现有帐户登录到应用程序。OAuth 2.0 Login 实现了两个用例: “ Login with Google”或“ Login with GitHub”。 OAuth 2.0 Lo…

若依vue集成electron实现打包exe应用程序

一、修改package.json文件,加入相关依赖和配置 {"name": "ruoyi","version": "3.8.6","description": "若依管理系统","author": "若依","license":

分层图最短路,CF 1725M - Moving Both Hands

一、题目 1、题目描述 2、输入输出 2.1输入 2.2输出 3、原题链接 1725M - Moving Both Hands 二、解题报告 1、思路分析 题意看似很简单&#xff0c;就是问我们两个人分别处于1, p两个点上&#xff0c;二者同时出发&#xff0c;相遇时二者所用路径之和的最小值 不难想到求…

mysql默认开启索引下推,减少回表的数据

目的&#xff1a;在回表前就进行where多个条件的判断&#xff0c;从而回表到服务器层的数据量足够小 索引下推的工作原理 在没有索引下推优化的情况下&#xff0c;当 MySQL 使用索引进行查询时&#xff0c;它会从索引中获取符合条件的索引条目&#xff0c;然后回表&#xff0…

Ubuntu中如何设置IP地址

在 Ubuntu 中&#xff0c;可以通过几种方式设置 IP 地址&#xff1a;使用网络管理器图形界面、命令行工具&#xff08;如 nmcli 或 nmtui&#xff09;、或直接编辑网络配置文件。以下是这几种方法的详细步骤。 方法一&#xff1a;使用图形界面&#xff08;Network Manager&…

Git协作

文章目录 Git协作冲突冲突的发生情况解决冲突如何处理冲突 1 分支1.1 什么是Git分支1.2 创建分支 2 切换分支2.1 指向分支2.2 暂存分支切换分支与未提交更改的处理使用 Stash 临时保存更改Stash 的工作原理&#xff1a;场景设定使用 Git Stash 3 远程分支3.1 快进合并快进合并的…

13. 求余

问题描述 在 C/C/Java/Python 等语言中, 使用 % 表示求余, 请问 2021 % 20 的值是多少? 答案提交 这是一道结果填空的题, 你只需要算出结果后提交即可。本题的结果为一 个整数, 在提交答案时只填写这个整数, 填写多余的内容将无法得分。 运行限制 最大运行时间&#xff1…

Qt/QML学习-定位器

QML学习 定位器例程视频讲解代码 main.qml import QtQuick 2.15 import QtQuick.Window 2.15Window {width: 640height: 480visible: truetitle: qsTr("positioner")Rectangle {id: rectColumnwidth: parent.width / 2height: parent.height / 2border.width: 1Col…

Qt基础控件总结—多页面切换(QStackWidget类、QTabBar类和QTabWidget类)

QStackedWidget 类 QStackedWidget 类是在 QStackedLayout 之上构造的一个便利的部件,其使用方法与步骤和 QStackedLayout 是一样的。QStackedWidget 类的成员函数与 QStackedLayout 类也基本上是一致的,使用该类就和使用 QStackedLayout 一样。 使用该类可以参考QStackedL…

Perl 语言进阶学习

Perl 语言进阶学习 在掌握 Perl 的基础知识后&#xff0c;进一步学习 Perl 的高级特性和应用&#xff0c;将有助于提升编程效率和解决复杂问题的能力。本文将详细介绍 Perl 语言的高级功能、最佳实践以及实际应用案例。 目录 高级数据结构 多维数组复杂数据结构 引用与匿名数…

计算机如何学习

1. 不要只盯着计算机语言学习&#xff0c;你现在已经学习了C语言和Java&#xff0c;暑假又规划学习Python&#xff0c;最后你掌握的就是计算机语言包而已。 2. 建议你找一门想要深挖的语言&#xff0c;沿着这个方向继续往后学习知识就行。计算机语言是学不完的&#xff0c;而未…

iPhone数据恢复篇:在 iPhone 上恢复找回短信的 5 种方法

方法 1&#xff1a;检查最近删除的文件夹 iOS 允许您在 30 天内恢复已删除的短信。您需要先从“设置”菜单启用“过滤器”。让我们来实际检查一下。 步骤 1&#xff1a;打开“设置” > “信息”。 步骤 2&#xff1a;选择“未知和垃圾邮件”&#xff0c;然后切换到“过滤…

如何将若依vue升级到springboot3.x?

为了确保项目符合要求,Spring Boot 3.x 要求Java版本为17或更高。 1、修改根目录下的pom.xml文件 <!-- java.version版本8更换为17 --> <java.version>17</java.version><!-- 新增节点 --> <mybatis-spring-boot.version>3.0.3<

2019年美赛题目Problem A: Game of Ecology

本题分析&#xff1a; 本题想要要求从实际生物角度出发&#xff0c;对权力游戏中龙这种虚拟生物的生态环境和生物特性进行建模&#xff0c;感觉属于比较开放类型的题目&#xff0c;重点在于参考生物的选择&#xff0c;龙虽然是虚拟的但是龙的生态特性可以参考目前生物圈里存在…

SpringMVC(3)——SpringMVC注解实战

前言 SpringMVC&#xff08;2&#xff09;——controller方法参数与html表单对应&#xff08;请求参数的绑定&#xff09; 上篇博客我们提到了controller方法的参数与html表单之间的对应关系 但是这种对应关系有很多缺点&#xff1a; 传递参数只能放在request的body当中&am…

MySQL数据库字符集utf8mb4的排序规则介绍

在MySQL数据库中&#xff0c;字符集&#xff08;charset&#xff09;和排序规则&#xff08;collation&#xff09;是处理文本数据的重要概念。字符集决定了数据库如何存储字符数据&#xff0c;而排序规则决定了如何比较和排序字符数据。 utf8mb4 字符集 utf8mb4 是 MySQL 中…

极狐Gitlab使用(2)

目录 1. Gitlab命令行修改管理员密码 2. Gitlab服务管理 3. 公司的开发代码提交处理流程 4. Gitlab 备份与恢复 数据备份 测试数据恢复 5. 邮箱配置 1. Gitlab命令行修改管理员密码 [roottty01 ~]# gitlab-rails console -e production # 启动GitLab的Rails控制…

Docker 日志丢失 - 解决方案

Docker 日志默认使用的是 journald 的方式. RateLimitBurst 是 journald 的一个参数&#xff0c;用于限制日志的速率。如果日志的生成速度超过这个限制&#xff0c;journald 可能会丢弃日志。你可以通过调整这个参数来避免日志被丢弃。 调整 RateLimitBurst 和 RateLimitInte…

C++ 入门06:类的进阶(构造函数的重载与拷贝构造函数)

往期回顾&#xff1a; C 入门03&#xff1a;函数与作用域-CSDN博客C 入门04&#xff1a;数组与字符串-CSDN博客C 入门05&#xff1a;类和对象-CSDN博客 一、前言 在前面文章的学习中&#xff0c;我们了解了 C 的基本结构、变量、输入输出、控制结构、循环、函数、作用域、数组…

windows USB 设备驱动开发-USB电源管理(一)

符合通用串行总线 (USB) 规范的 USB 设备的电源管理功能具有一组丰富而复杂的电源管理功能。 请务必了解这些功能如何与 Windows 驱动程序模型 (WDM) 交互&#xff0c;特别是 Microsoft Windows 如何调整标准 USB 功能以支持系统唤醒体系结构。 基于内核模式驱动程序框架的 US…