【问题标题】:Keep fixed position image always in center of viewport将固定位置图像始终保持在视口中心
【发布时间】:2019-07-02 17:07:53
【问题描述】:

我正在寻找一种方法来保持我的固定位置图像,这些图像通过 z-index 放置在页面的背景中,始终位于中心。

现在它们在中心,但是当我开始滚动时,它们不会向下移动页面,因此不再居中。

我尝试将图像容器设置为顶部和左侧 50% 的固定位置。我也尝试过使用 50vh 和 50vw,并测试了其他 vh 和 vw 值。

* { padding: 0; margin: 0; box-sizing: border-box; }

body {
  padding: 30px;
}

li.track {
  display: block;
  font-size: 5rem;
  margin-bottom: 15px;
}

li.track:hover {
  color: transparent;
  -webkit-text-stroke-color: #18181b;
  -webkit-text-stroke-width: 3px;
}

li.track:hover .album-art {
  display: block;
}

.album-art {
  z-index: -10;
  position: fixed;
  left: 47vw;
  top: 12vh;
  width: 90%;
  height: 50%;
  max-height: 450px;
  display: none;
  opacity: 0.5;
  overflow: hidden;
  transform: translateX(-50%);
}

.album-art img {
  width: 100%;
}

a {
  text-decoration: none;
  color: inherit;
}

<div class="tracks">

  <ol>
    <li class="track">
      <a href="#" class="nav">
        <div class="album-art"><img src="https://s3-us-west-2.amazonaws.com/s.cdpn.io/1774776/michael-nau.jpg"></div>
        <p class="track-name">King Princess - 'Cheap Queen'</p>
      </a>
    </li>

    <li class="track">
      <a href="#" class="nav">
        <div class="album-art"><img src="hhttps://s3-us-west-2.amazonaws.com/s.cdpn.io/1774776/louie-short.jpg"></div>
        <p class="track-name">Charly Bliss - 'Capacity'</p>
      </a>
    </li>

    <li class="track">
      <a href="#" class="nav">
        <div class="album-art"><img src="/https://s3-us-west-2.amazonaws.com/s.cdpn.io/1774776/P4K-Tom-Waits-Jim-Jarmusch_PitchHeader.jpg"></div>
        <p class="track-name">Julia Jacklin - 'Good Guy'</p>
      </a>
    </li>

    <li class="track">
      <a href="#" class="nav">
        <div class="album-art"><img src="/img/kevin-abstract.png"></div>
        <p class="track-name">Kevin Abstract - 'Georgia'</p>
      </a>
    </li>

    <li class="track">
      <a href="#" class="nav">
        <div class="album-art"><img src="/img/okey-dokey.jpg"></div>
        <p class="track-name">Okey Dokey - 'Wag Your Tail'</p>
      </a>
    </li>

    <li class="track">
      <a href="#" class="nav">
        <div class="album-art"><img src="https://s3-us-west-2.amazonaws.com/s.cdpn.io/1774776/fruit-bats.jpg"></div>
        <p class="track-name">Devendra Banhart - 'Kantori Ongaku'</p>
      </a>
    </li>

    <li class="track">
      <a href="#" class="nav">
        <div class="album-art"><img src="/img/michael-nau.jpg"></div>
        <p class="track-name">Michael Nau - 'Rides Through The Morning'</p>
      </a>
    </li>

    <li class="track">
      <a href="#" class="nav">
        <div class="album-art"><img src="https://s3-us-west-2.amazonaws.com/s.cdpn.io/1774776/fruit-bats.jpg"></div>
        <p class="track-name">Hop Along - 'Prior Things'</p>
      </a>
    </li>

    <ol>
</div>

我希望悬停时显示的图像始终位于页面中心(无论是否滚动)。

【问题讨论】:

    标签: html css image viewport


    【解决方案1】:

    试试这个css:

    body {
      padding: 30px;
    }
    
    li.track {
      display: block;
      font-size: 5rem;
      margin-bottom: 15px;
    }
    
    li.track:hover {
      color: transparent;
      -webkit-text-stroke-color: #18181b;
      -webkit-text-stroke-width: 3px;
    }
    
    li.track:hover .album-art {
      display: block;
    }
    
    .album-art {
      z-index: -10;
      position: fixed;
      left: 50%;
      top: 50%;
      width: 90%;
      height: 50%;
      max-height: 450px;
      display: none;
      opacity: 0.5;
      overflow: hidden;
      transform: translate(-50%,-50%);
    }
    
    .album-art img {
      width: 100%;
    }
    
    a {
      text-decoration: none;
      color: inherit;
    }
    

    谢谢

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-11-19
      • 1970-01-01
      • 2019-03-04
      • 2017-04-10
      • 2018-03-10
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多