flex为1的元素宽度自适应的同时,文本太长的时候显示省略号
项目中有一个列表,有复选框列、文件名称列、操作列(操作列无表头)、时间列、大小列。
文件名称列的样式设置为 flex : 1,其他列都有固定的宽度。所以名称列会根据屏幕宽度的大小而自适应,同时文件名字太长的话,需要截断显示省略号,同时文件名称列左边还有一个图标。
下面为样式设置。
.col-name { flex: 1; min-width: 0; display: flex; align-items: center; text-align: left; color: #353738; overflow: hidden; /* 新增 */ .file-icon { width: 36px; height: 36px; margin-right: 5px; flex-shrink: 0; /* 防止图标被压缩 */ } .file-name-text { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; flex-grow: 1; min-width: 0; /* 允许文本截断 */ cursor: pointer; &:hover { color: #1685ef; text-decoration: underline; } } }