为什么 link 使用锚标记对图像不起作用?

why link using anchor tag not working on image?

我使用 html 和 css 创建了以下内容。但是,每当我尝试单击 image.I 时,我的 link 就无法正常工作 在此使用了弹性框 =d 连续使用了多个元素,但只给出了一个元素的代码。

<div id="CONTESTS">
    <div class="contests">
        <h2>Upcoming Contests</h2> 
        <div class="same-row">
    <div class="row">
        <div class="list-col">
            <a href="https://www.codechef.com/contests" >
            <img src="codechef.png" alt="">
        </a>
            <div class="layer">
                <!-- CodeChef -->
            </div>
        </div>
    </div>
  </div>
        </div>
    </div>

SCSS代码

.contests{
  width:80%;
  margin:auto;
  text-align: center;
  padding-top: 50px;;
}
.course-box{
  // padding:8vw 8vw 0 8vw;
  text-align: center;
  img{
    width: 100%;
    height:100%;
    background-size: cover;
    background-position: center;
  }
}
.list-col{
  flex-basis: 100%;
  border-radius: 10px;
  // margin-bottom: 30px;
  position: relative;
  overflow: hidden;
}
.list-col img{
  width: 100%;
}
.layer{
  // background: rgba(226, 0, 0, 0.7);
  background: transparent;
  height:100%;
  width:100%;
  position: absolute;
  top:0px;
  left:0;
  transition: 0.5s;
}
.layer:hover{
  cursor: pointer;
  background: rgba(255, 0, 0, 0.7);
}
.same-row{
  display: flex;
  flex-wrap: wrap;
}
.same-row > div {
  
  flex: 25%; /* or - flex: 0 50% - or - flex-basis: 50% - */
  /*demo*/
  // box-shadow: 0 0 0 1px black;
  // box-shadow: 2.5px 5px rgb(164, 164, 164);
  margin-bottom: 10px;
  margin-top:40px;
  margin-left: 20px;
  border-radius: 10px;
}

我的主要目的是在我单击图片时将我定向到该页面。我无法找出我的代码中的错误。任何帮助将不胜感激。

也许您想在 img 标签中尝试 onClick 事件

<img src="codechef.png" alt="" onclick="window.open('https://www.codechef.com/contests')">

此致

*,
*::before,
*::after {
  padding: 0;
  margin: 0;
  box-sizing: border-box;
}
.contests {
  width: 80%;
  margin: auto;
  text-align: center;
  padding-top: 50px;
}
.course-box {
  padding: 8vw 8vw 0 8vw;
  text-align: center;
  img {
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
  }
}
.list-col {
  flex-basis: 100%;
  border-radius: 10px;
  margin-bottom: 30px;
  position: relative;
  overflow: hidden;
}
.list-col img {
  object-fit: cover;
}
.layer {
  background: transparent;
  border-radius: 10px;
  height: 100%;
  width: 100%;
  position: absolute;
  top: 0;
  right: 0;
  transition: all 0.5s ease-in-out;
}
.layer:hover {
  cursor: pointer;
  background: rgba(255, 0, 0, 0.7);
  pointer-events: none;
}
.same-row {
  display: flex;
  flex-wrap: wrap;
}
.same-row > div {
  flex: 25%; /* or - flex: 0 50% - or - flex-basis: 50% - */
  /*demo*/
  // box-shadow: 0 0 0 1px black;
  // box-shadow: 2.5px 5px rgb(164, 164, 164);
  margin-bottom: 10px;
  margin-top: 40px;
  margin-left: 20px;
  border-radius: 10px;
}
<div id="CONTESTS">
  <div class="contests">
    <h2>Upcoming Contests</h2>
    <div class="same-row">
      <div class="row">
        <div class="list-col">
          <a href="https://www.codechef.com/contests">
            <img src="codechef.png" alt="">
          </a>
          <div class="layer">
            <!-- CodeChef -->
          </div>
        </div>
      </div>
    </div>
  </div>
</div>