前端實例練習 - 圖片覆蓋層

圖片覆蓋層

代碼儲存在Github
效果預覽css

初衷:不少人在初學前端的時候都會問,「如何入門前端?」
同爲在前端學習道路上,奮力追趕的一員,本人對於目前網絡上所能看到的 「入門級」 的教材並不太滿意。學習一門新知識,實例是尤爲重要的。在這裏本人整理了目前頁面上常見功能實現的具體實例。願能爲你們提供一些幫助。
但願可以與你們互相分享,共同進步。html

效果預覽
圖片描述前端

HTML 部分

<h2>圖片覆蓋層</h2>

    <select id="mySelect">
        <option value="overlayFadeIn">漸顯</option>
        <option value="overlaySlideInTop">從上滑入</option>
        <option value="overlaySlideInBottom">從下滑入</option>
        <option value="overlaySlideInRight">從右滑入</option>
        <option value="overlaySlideInLeft">從左滑入</option>
    </select>

    <div class="container">
      <img src="https://www.w3schools.com/howto/img_avatar.png" alt="Avatar" class="image">
      <div class="overlayFadeIn" id="overlay">
        <div class="text">Hello World</div>
      </div>
    </div>

CSS 部分

#mySelect {
  font-size: 16px;
  text-align: center;
}

.container {
  position: relative;
  width: 30%;
}

.image {
  display: block;
  width: 100%;
}

.overlayFadeIn {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  height: 100%;
  width: 100%;
  opacity: 0;
  transition: .5s ease;
  background-color: #008CBA;
}

.container:hover .overlayFadeIn {
  opacity: 1;
}

.overlaySlideInTop {
  position: absolute;
  bottom: 100%;
  left: 0;
  right: 0;
  background-color: #008CBA;
  overflow: hidden;
  width: 100%;
  height:0;
  transition: .5s ease;
}

.container:hover .overlaySlideInTop {
  bottom: 0;
  height: 100%;
}

.overlaySlideInBottom {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  background-color: #008CBA;
  overflow: hidden;
  width: 100%;
  height: 0;
  transition: .5s ease;
}

.container:hover .overlaySlideInBottom {
  height: 100%;
}

.overlaySlideInRight {
  position: absolute;
  bottom: 0;
  left: 100%;
  right: 0;
  background-color: #008CBA;
  overflow: hidden;
  width: 0;
  height: 100%;
  transition: .5s ease;
}

.container:hover .overlaySlideInRight {
  width: 100%;
  left: 0;
}

.overlaySlideInLeft {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  background-color: #008CBA;
  overflow: hidden;
  width: 0;
  height: 100%;
  transition: .5s ease;
}

.container:hover .overlaySlideInLeft {
  width: 100%;
}

.text {
  color: white;
  font-size: 20px;
  position: absolute;
  white-space: nowrap;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

JavaScript 部分

這部分代碼只爲展現方便而用,不需考慮。git

(function() {
    var mySelect = document.getElementById('mySelect');
        overlay = document.getElementById('overlay');

    mySelect.onchange = function(e) {
        overlay.className = e.target.value;
    }
})();

好啦,如今全部的代碼都寫完啦!github

趕快打開瀏覽器,看看效果吧!web

在這裏,只是給你們提供一種思路,參考。
具體的實現,每一個人均可以有不一樣的方法。
請你們趕快發揮想象,把你最想實現的功能,在電腦敲出來吧!瀏覽器

參考自w3cschools網絡

相關文章
相關標籤/搜索