首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >怎样才能让边框和z-index一直保持到转换结束?

怎样才能让边框和z-index一直保持到转换结束?
EN

Stack Overflow用户
提问于 2020-05-14 19:49:38
回答 1查看 80关注 0票数 1

我想创建一个比例,但我似乎有一点问题,我的边界和他们停留在比例转换。在我的代码中,网格有上边界和左边界,项有下边界和右边界。否则我会得到双重边界。现在,如果我想将比例转换为1.1来创建一个漂亮的弹出效果,当我移除鼠标时,边界就会消失,因为悬停状态会消失。有没有人知道如何在过渡过程中保留单个边框并保持边框不变?

This is what happens.

代码语言:javascript
复制
.project-grid .grid {
  width: 80%;
  align-self: center;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  border-top: 1px solid black;
  border-left: 1px solid black;
}

.inner-container {
  position: relative;
  height: 200px;
  border-bottom: 1px solid black;
  border-right: 1px solid black;
  border-top: none;
  border-left: none;
  background: white;
  padding: 2rem;
}

.inner-container:hover {
  border: 1px solid black;
}

.project-tile {
  transition: transform .3s;
}

.project-tile .see-more {
  opacity: 0;
  position: absolute;
  bottom: 2rem;
  right: 2rem;
  transition: opacity 0.1s;
}

.project-tile:hover .see-more {
  opacity: 1;
}

.project-tile:hover {
  transform: scale(1.1);
  z-index: 2;
}

.span-2 {
  grid-column-end: span 2;
}
代码语言:javascript
复制
<div class="project-grid">
  <div class="flex-wrapper row">
    <h1>{{page.title}}</h1>
    <div class="grid">
      <div class="project-tile span-2">
        <div class="inner-container">
          <h3>SPIL</h3>
          <p>Yeet</p>
          <a href="#noref" class="see-more">Bekijk meer ></a>
        </div>
      </div>
      <div class="project-tile">
        <div class="inner-container">
          <h3>SPIL</h3>
          <p>Yeet</p>
          <a href="#noref" class="see-more">Bekijk meer ></a>
        </div>
      </div>
      <div class="project-tile">
        <div class="inner-container">
          <h3>SPIL</h3>
          <p>Yeet</p>
          <a href="#noref" class="see-more">Bekijk meer ></a>
        </div>
      </div>
      <div class="project-tile span-2">
        <div class="inner-container">
          <h3>SPIL</h3>
          <p>Yeet</p>
          <a href="#noref" class="see-more">Bekijk meer ></a>
        </div>
      </div>
    </div>
  </div>
</div>

EN

回答 1

Stack Overflow用户

发布于 2020-05-14 19:58:46

简化代码,使用轮廓而不是组合边框,并确保在取消悬停时考虑z索引的延迟

代码语言:javascript
复制
.project-grid .grid {
  width: 80%;
  align-self: center;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
}

.inner-container {
  position: relative;
  height: 200px;
  outline: 1px solid black;
  background: white;
  padding: 2rem;
}

.project-tile {
  transition: transform .3s,z-index 0s 0.3s; /* updated */
  z-index:1;
}

.project-tile .see-more {
  opacity: 0;
  position: absolute;
  bottom: 2rem;
  right: 2rem;
  transition: opacity 0.1s;
}

.project-tile:hover .see-more {
  opacity: 1;
}

.project-tile:hover {
  transform: scale(1.1);
  z-index: 2;
  transition: transform .3s,z-index 0s 0s; /* updated */
}
/* this will make sure the hovered element will always be on the top */
.project-tile:hover ~ *{
  z-index:1;
  transition: z-index 0s 0s;
}
/**/

.span-2 {
  grid-column-end: span 2;
}
代码语言:javascript
复制
<div class="project-grid">
  <div class="flex-wrapper row">
    <h1>{{page.title}}</h1>
    <div class="grid">
      <div class="project-tile span-2">
        <div class="inner-container">
          <h3>SPIL</h3>
          <p>Yeet</p>
          <a href="#noref" class="see-more">Bekijk meer ></a>
        </div>
      </div>
      <div class="project-tile">
        <div class="inner-container">
          <h3>SPIL</h3>
          <p>Yeet</p>
          <a href="#noref" class="see-more">Bekijk meer ></a>
        </div>
      </div>
      <div class="project-tile">
        <div class="inner-container">
          <h3>SPIL</h3>
          <p>Yeet</p>
          <a href="#noref" class="see-more">Bekijk meer ></a>
        </div>
      </div>
      <div class="project-tile span-2">
        <div class="inner-container">
          <h3>SPIL</h3>
          <p>Yeet</p>
          <a href="#noref" class="see-more">Bekijk meer ></a>
        </div>
      </div>
    </div>
  </div>
</div>

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61796624

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档