html - 如果超出屏幕高度React Bootstrap,如何自动切断图像?
问题描述
我正在尝试创建一个个人网站,您首先看到的是在屏幕最右侧 10 列上使用轮播的图片幻灯片。我希望图像占据最右边 10 列的整个宽度,但是,只占据屏幕的高度;它应该通过仅在图像超过屏幕高度时切断图像来保持纵横比。到目前为止,我所做的正是我想要的,除非它超过了屏幕的末端。
我尝试过以多种不同的方式/组合来处理图像、行和列的最大高度和视图高度,但它似乎没有采取。
这是轮播的代码:
import React, { Component } from 'react'
import Container from 'react-bootstrap/Container'
import Row from 'react-bootstrap/Row'
import Col from 'react-bootstrap/Col'
import Carousel from 'react-bootstrap/Carousel'
import Image from 'react-bootstrap/Image'
import img1 from '../assets/Home/img1.jpg'
import img2 from '../assets/Home/img2.jpg'
import img3 from '../assets/Home/img3.jpg'
export default class home extends Component {
render() {
return (
<Container fluid>
<div className="vh-100">
<Row className="row">
<Col className="col-2"></Col>
<Col className="col-10 px-0 align-items-start">
<Carousel>
<Carousel.Item>
<Image className="mh-100" src={img1} fluid />
<Carousel.Caption>
<h3>First slide label</h3>
<p>Description of image.</p>
</Carousel.Caption>
</Carousel.Item>
<Carousel.Item>
<Image className="mh-100" src={img2} fluid />
<Carousel.Caption>
<h3>Second slide label</h3>
<p>Description of image.</p>
</Carousel.Caption>
</Carousel.Item>
<Carousel.Item>
<Image className="mh-100" src={img3} fluid />
<Carousel.Caption>
<h3>Third slide label</h3>
<p>Description of image.</p>
</Carousel.Caption>
</Carousel.Item>
</Carousel>
</Col>
</Row></div>
</Container>
)
}
}
任何信息/指导都会有所帮助。谢谢你。
解决方案
所以我的解决方案,有点,只是放弃尝试使用 react-bootstrap 设置它的样式,并使用原始 css 来设置图像的样式,如下所示:
img.slide {
width: 100%;
height: auto;
object-fit: cover;
max-height: 100vh;
}
推荐阅读
- sql - 在 Oracle DB Developer VM 中启动时 SQL Developer 崩溃
- c# - 未找到 C# .NET UserNotificationListener 元素
- time - Raspberry Pi Pico - 纳秒计时器
- gluon - Gluon Native DRM javaFX 错误,无法启动基于 DRM 的 JavaFX Native 应用程序
- python - 基于列值 0 或 1 的行的平均值
- .net - 如何在 .NET Core 5 上将 example.com 重定向到 example.com/espanol
- python - 将单个单词附加到一个集合中,以便我得到唯一的字母
- java - 配对(连接)到新设备或配对在应用程序中不起作用
- node.js - NodeJS - 将对象数组转换为对象对象
- javascript - 从列表中删除 listItems