react实现盒子里边内容过长 超出盒子内容 添加一个图标点击展开出现纵向滚动条
时间: 2023-12-10 08:40:35 浏览: 77
html中设置让div中的内容超出后自动显示滚动条
你可以使用CSS中的`overflow`属性来控制盒子内内容溢出时的表现,为了达到你想要的效果,可以将`overflow`属性设置为`hidden`,然后给盒子添加一个图标,并通过JavaScript来监听图标点击事件,当图标被点击时,将盒子的`overflow`属性设置为`auto`,这样就可以出现纵向滚动条了。
下面是一个简单的示例代码:
HTML代码:
```html
<div class="box">
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec condimentum semper lobortis. Nam euismod tristique dolor, ac dictum mauris lacinia nec. Vestibulum commodo urna at nulla molestie, vel interdum lectus mollis. Sed auctor turpis vel enim mattis, id tempor sapien vehicula. Nullam eget leo id mauris dapibus eleifend et sit amet metus. Vivamus vitae nisl justo. Mauris bibendum, erat sed egestas viverra, urna enim commodo metus, in molestie libero arcu non mauris. Morbi euismod massa ac arcu suscipit, ut imperdiet mauris efficitur.</p>
<img src="expand.png" class="expand-icon" alt="Expand Icon">
</div>
```
CSS代码:
```css
.box {
width: 200px;
height: 100px;
overflow: hidden;
position: relative;
}
.expand-icon {
position: absolute;
bottom: 0;
right: 0;
cursor: pointer;
}
```
JavaScript代码:
```javascript
const box = document.querySelector('.box');
const expandIcon = document.querySelector('.expand-icon');
expandIcon.addEventListener('click', () => {
box.style.overflow = 'auto';
});
```
这样,当用户点击图标时,盒子内容就可以纵向滚动了。
阅读全文