html - 如何使红色覆盖层仅覆盖图像而不是向右溢出,如图所示
问题描述
正如您在右侧校园图片的图像中看到的那样,红色溢出的不仅仅是图像
这是我的 HTML 代码
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>HZ University</title>
<!--Bootstrap CSS-->
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.0.1/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-+0n0xVW2eSR5OomGNYDnhzAbDsOXxcvSN1TPprVMTNDbiYZCxYbOOl7+AMvyTG2x" crossorigin="anonymous">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.4.0/css/font-awesome.min.css">
<!--Custom Css-->
<link rel="stylesheet" href="hzuni.css">
<!--Fonts-->
<link rel="preconnect" href="https://fonts.gstatic.com">
<link href="https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,400;0,600;0,700;1,100;1,200;1,400;1,600;1,700&display=swap" rel="stylesheet">
</head>
<body>
<!--Navigation + Logo + Background-->
<section class="header">
<div class="navContainer">
<nav>
<a href="hzuni.html"><img src="imgs/logo.png"></a>
<img id="menuIcon" class="menuIcon img-fluid" src="imgs/menu.png" onclick="showMenu()" >
<div class="nav-links" id="nav-links">
<ul>
<i class="fa fa-times" onclick="hideMenu()"></i>
<li><a href="hzuni.html">HOME</a></li>
<li><a href="">ABOUT</a></li>
<li><a href="">COURSE</a></li>
<li><a href="">BLOG</a></li>
<li><a href="">CONTACT</a></li>
</ul>
</div>
</div>
</nav>
<div class="headerText">
<h2>Voted The World's Biggest And Best University</h2>
<p>Lorem ipsum dolor, sit amet consectetur adipisicing elit. Perferendis aliquam harum facere optio iure magni tenetur explicabo ratione<br> sed eligendi temporibus quidem dignissimos placeat deleniti ab, perspiciatis consequatur nisi animi.</p>
<button class="btn btn-primary">Visit Us To Learn More</button>
</div>
</section>
<!--End of Nav-->
<section class="course">
<h1>Courses We Offer</h1>
<p>Lorem ipsum dolor sit amet consectetur adipisicing elit.</p>
<div class="container-fluid justify-content-lg-between">
<div class="row">
<div class=" col-md-5 col-lg-3 col-sm-12 columns ">
<h2>Intermediate</h2>
<p>Lorem ipsum dolor sit amet consectetur adipisicing elit. Tempore incidunt saepe corporis recusandae cupiditate possimus eum a velit pariatur minima reiciendis, esse aliquid qui, assumenda nisi ipsam rerum eligendi delectus?
Ea officiis suscipit earum numquam expedita atque at magnam veniam. Quos doloribus asperiores nostrum tenetur, hic nisi accusantium fuga commodi consequuntur exercitationem non nulla maxime laudantium at laboriosam quae officiis?</p>
</div>
<div class="col-4 col-md-5 col-lg-3 col-sm-12 columns">
<h2>Degree</h2>
<p>Lorem ipsum dolor sit amet consectetur adipisicing elit. Tempore incidunt saepe corporis recusandae cupiditate possimus eum a velit pariatur minima reiciendis, esse aliquid qui, assumenda nisi ipsam rerum eligendi delectus?
Ea officiis suscipit earum numquam expedita atque at magnam veniam. Quos doloribus asperiores nostrum tenetur, hic nisi accusantium fuga commodi consequuntur exercitationem non nulla maxime laudantium at laboriosam quae officiis?</p>
</div>
<div class="col-4 col-md-12 col-lg-3 mt-md-5 mt-lg-0 col-sm-12 columns">
<h2>Post-Graduate</h2>
<p>Lorem ipsum dolor sit amet consectetur adipisicing elit. Tempore incidunt saepe corporis recusandae cupiditate possimus eum a velit pariatur minima reiciendis, esse aliquid qui, assumenda nisi ipsam rerum eligendi delectus?
Ea officiis suscipit earum numquam expedita atque at magnam veniam. Quos doloribus asperiores nostrum tenetur, hic nisi accusantium fuga commodi consequuntur exercitationem non nulla maxime laudantium at laboriosam quae officiis?</p>
</div>
</div>
</div>
</section>
<!--CAMPUS-->
<section class="campus">
<h1>Our Global Campus</h1>
<p>Lorem ipsum dolor sit amet consectetur adipisicing elit.</p>
<div class="container-fluid">
<div class="row mt-5">
<div class="col-5 img1">
<img src="imgs/CampusA.jpg" class="img-fluid max-width: 100% " id="campusA">
<div class="layer">
<h3>BOSTON</h3>
</div>
</div>
<div class="col-5 img2">
<img src="imgs/CampusC.jpg" class="img-fluid" id="campusC">
<div class="layer">
<h3>BOSTON</h3>
</div>
</div>
</div>
</div>
</section>
<!--JavaScript Custom-->
<!--Toogle Menu-->
<script>
function showMenu(){
document.getElementById("nav-links").style.display = "inline-block"}
</script>
<script>
function hideMenu(){
document.getElementById("nav-links").style.display = "none"}
</script>
</body>
</html>
这是校园部分的 CSS
.campus{
width: 80%;
margin: auto;
text-align: center;
padding-top: 50px;
}
#campusA{
height: 300px;
border-radius: 2%;
position: relative;
}
#campusC{
height: 300px;
border-radius: 2%;
}
.layer{
background: rgba(226, 0, 0, 0.7);
height: 100%;
width: 100%;
position: absolute;
top: 0;
border-radius: 2%;
}
.img1{
flex-basis: 32%;
margin-bottom: 30px;
position: relative;
overflow: hidden;
}
.img1 img{
width: 100%;
}
.img2{
flex-basis: 32%;
margin-bottom: 30px;
position: relative;
overflow: hidden;
}
.img2 img{
width: 100%;
}
我已经尝试了一切,但我找不到问题,当我将 .layer 的宽度更改为 80% 时,它会影响响应能力,知道如何解决这个问题吗?
解决方案
有一个填充,您可以通过 class 重置p-0
。
你也可以使用这个类justify-content-X
来对齐你的盒子,下面的例子使用justify-content-around
.
function hideMenu() {
document.getElementById("nav-links").style.display = "none"
}
function showMenu() {
document.getElementById("nav-links").style.display = "inline-block"
}
.campus {
width: 80%;
margin: auto;
text-align: center;
padding-top: 50px;
}
#campusA {
height: 300px;
border-radius: 2%;
position: relative;
}
#campusC {
height: 300px;
border-radius: 2%;
}
.layer {
background: rgba(226, 0, 0, 0.7);
height: 100%;
width: 100%;
position: absolute;
top: 0;
border-radius: 2%;
}
.img1 {
flex-basis: 32%;
margin-bottom: 30px;
position: relative;
overflow: hidden;
}
.img1 img {
width: 100%;
}
.img2 {
flex-basis: 32%;
margin-bottom: 30px;
position: relative;
overflow: hidden;
}
.img2 img {
width: 100%;
}
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>HZ University</title>
<!--Bootstrap CSS-->
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.0.1/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-+0n0xVW2eSR5OomGNYDnhzAbDsOXxcvSN1TPprVMTNDbiYZCxYbOOl7+AMvyTG2x" crossorigin="anonymous">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.4.0/css/font-awesome.min.css">
<!--Custom Css-->
<link rel="stylesheet" href="hzuni.css">
<!--Fonts-->
<link rel="preconnect" href="https://fonts.gstatic.com">
<link href="https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,400;0,600;0,700;1,100;1,200;1,400;1,600;1,700&display=swap" rel="stylesheet">
</head>
<body>
<!--CAMPUS-->
<section class="campus">
<h1>Our Global Campus</h1>
<p>Lorem ipsum dolor sit amet consectetur adipisicing elit.</p>
<div class="container-fluid">
<div class="row mt-5 justify-content-around"><!-- horizontal aligment reset -->
<div class="col-5 img1 p-0"><!-- padding-reset -->
<img src="imgs/CampusA.jpg" class="img-fluid max-width: 100% " id="campusA">
<div class="layer">
<h3>BOSTON</h3>
</div>
</div>
<div class="col-5 img2 ml-5 p-0"><!-- padding-reset -->
<img src="imgs/CampusC.jpg" class="img-fluid" id="campusC">
<div class="layer">
<h3>BOSTON</h3>
</div>
</div>
</div>
</div>
</section>
</body>
</html>
推荐阅读
- sql - 如何从不同的表中获取记录并忽略 SQL 中的重复日期?
- javascript - WebSocket 响应函数执行
- python - 如何控制 mpl_toolkits 底图的边距?
- python - 更改整个窗口的鼠标光标形状(应用程序窗口内部和外部)
- java - java.sql.SQLIntegrityConstraintViolationException: ORA-00001
- javascript - Testcafe:多个没有存储事件的 Windows
- python - 使用 Python 使用 Cluster RabbitMq 的队列
- javascript - 在 Edge IE 模式下检测浏览器
- ffmpeg - 我需要命令在指定时间覆盖视频
- python - BeautifulSoup 没有返回完整的 html - 403 Forbidden?