技术文摘
父元素内子元素两行排列、超出隐藏且显示省略号按钮的实现方法
2025-01-09 14:49:12 小编
在前端开发中,实现父元素内子元素两行排列、超出隐藏且显示省略号按钮的效果,能有效提升页面布局的美观与信息展示的合理性。以下将详细介绍这一效果的实现方法。
HTML结构搭建是基础。我们需要创建一个父元素,在其中放置多个子元素。例如:
<div class="parent">
<div class="child">这里是子元素的内容,可能比较长,会超出两行</div>
<div class="child">另一个子元素内容</div>
</div>
接着,通过CSS来实现核心样式。对于父元素,设置宽度和高度以限定其显示范围,并开启溢出隐藏功能,确保超出部分不显示。例如:
.parent {
width: 300px;
height: 60px; /* 根据两行文字高度设置 */
overflow: hidden;
position: relative;
}
对于子元素,要实现两行排列,可使用弹性布局或浮动布局。这里以弹性布局为例:
.child {
display: flex;
flex-wrap: wrap;
line-height: 30px; /* 每行文字高度 */
max-height: 60px; /* 两行文字总高度 */
overflow: hidden;
text-overflow: ellipsis;
white-space: normal;
}
其中,text-overflow: ellipsis 是关键,它能让超出的文字显示为省略号。但此时省略号在内容中间,不太美观,我们还需进一步处理。
为了显示省略号按钮,我们可以在父元素内添加一个伪元素,模拟按钮效果。例如:
.parent::after {
content: '...';
position: absolute;
bottom: 0;
right: 0;
background-color: white;
padding: 0 5px;
}
这样,一个简单的省略号按钮就显示出来了。但在实际应用中,可能还需要添加交互效果,比如点击按钮展开全部内容。这可以通过JavaScript来实现。
const parent = document.querySelector('.parent');
const child = document.querySelector('.child');
parent.addEventListener('click', function() {
if (child.style.maxHeight === '60px') {
child.style.maxHeight = 'none';
} else {
child.style.maxHeight = '60px';
}
});
通过上述HTML、CSS和JavaScript的配合使用,就能完美实现父元素内子元素两行排列、超出隐藏且显示省略号按钮的效果,为用户带来更好的视觉体验。
- 苹果 Mac 如何删除用户
- CentOS7 安装后网卡缺失的解决之道
- 苹果 MAC 系统语言添加方法
- CentOS 安装锐速 serverspeeder 指南
- CentOS 中 iptables 详细解析
- 解决 CentOS 7 中 python-pip 模块缺失的方法
- 苹果 Mac 添加 163 邮箱的方法教程
- CentOS 中 iptables 封 IP 命令解析
- Linux Lite 6.4 今日推出:基于 Ubuntu 22.04.2 LTS 且原生应用支持 Zstd 压缩
- Linux 6.3 第四个候选版本发布:diffstat 占比超 50%
- CentOS 或 RHEL 7 主机名修改方法
- 苹果 Mac 电脑屏幕录制方法及自带录屏软件介绍
- CentOS 系统中通过 yum 命令安装 redis 的步骤
- 苹果 Mac 启动磁盘空间的清理方法
- Linux 无法识别 NTFS 格式 U 盘的解决技巧