摘要:燈箱效果是將圖片放大彈出顯示,并將背景變暗,以突出圖片。燈箱效果教學(xué)燈箱效果例子視頻連結(jié)站燈箱效果實(shí)現(xiàn)燈箱效果的重點(diǎn)在于預(yù)設(shè)隱藏?zé)粝洹D片放大的效果可透過(guò)動(dòng)畫實(shí)現(xiàn)。
燈箱(Lightbox)效果是將圖片放大彈出顯示,并將背景變暗,以突出圖片。這種效果可用于單張圖片,也可用于圖片庫(kù)。其原理跟模態(tài)框(Modal)基本一樣。W3Schools有分Modal Images和Lightbox兩個(gè)教學(xué),主要差別在于Lightbox是為多張圖片設(shè)計(jì),而Modal Images則是單張圖片。為了方便理解這里選擇Modal Images,若能理解此例,加上之前的幻燈片,就差不多等于Lightbox中的例子。今天我們就來(lái)看看W3Schools是怎樣實(shí)理燈箱效果。
W3Schools燈箱效果教學(xué)
燈箱效果例子
視頻連結(jié)B站
YouTube
燈箱效果(Lightbox)實(shí)現(xiàn)燈箱效果的重點(diǎn)在于:
預(yù)設(shè)隱藏?zé)粝洹?/p>
當(dāng)小圖被點(diǎn)擊時(shí),顯示燈箱。
圖片放大的效果可透過(guò)CSS動(dòng)畫實(shí)現(xiàn)。
以下是燈箱效果的HTML部分:
×
第一張圖片是小圖,設(shè)定了最大寬度為300px。接著是燈箱,也是一個(gè)擬態(tài)框(Modal),當(dāng)中有關(guān)閉按鈕、大圖和標(biāo)題。其中圖片是沒(méi)有指定src的,留給JavaScript來(lái)處理,標(biāo)題也一樣。燈箱一開始是隱藏的。
再來(lái)看CSS的部分:
/* Style the Image Used to Trigger the Modal */ #myImg { border-radius: 5px; cursor: pointer; transition: 0.3s; } #myImg:hover {opacity: 0.7;} /* The Modal (background) */ .modal { display: none; /* Hidden by default */ position: fixed; /* Stay in place */ z-index: 1; /* Sit on top */ padding-top: 100px; /* Location of the box */ left: 0; top: 0; width: 100%; /* Full width */ height: 100%; /* Full height */ overflow: auto; /* Enable scroll if needed */ background-color: rgb(0,0,0); /* Fallback color */ background-color: rgba(0,0,0,0.9); /* Black w/ opacity */ } /* Modal Content (Image) */ .modal-content { margin: auto; display: block; width: 80%; max-width: 700px; } /* Caption of Modal Image (Image Text) - Same Width as the Image */ #caption { margin: auto; display: block; width: 80%; max-width: 700px; text-align: center; color: #ccc; padding: 10px 0; height: 150px; } /* Add Animation - Zoom in the Modal */ .modal-content, #caption { animation-name: zoom; animation-duration: 0.6s; } @keyframes zoom { from {transform:scale(0)} to {transform:scale(1)} } /* The Close Button */ .close { position: absolute; top: 15px; right: 35px; color: #f1f1f1; font-size: 40px; font-weight: bold; transition: 0.3s; } .close:hover, .close:focus { color: #bbb; text-decoration: none; cursor: pointer; } /* 100% Image Width on Smaller Screens */ @media only screen and (max-width: 700px){ .modal-content { width: 100%; } }
重點(diǎn)在.modal,一開始不顯示,且是占滿全屏。背景顏色是黑色,加了一點(diǎn)透明度。
放大動(dòng)畫用CSS動(dòng)畫實(shí)現(xiàn),其實(shí)就是用transform將圖片和標(biāo)題的scale從0放大到1。
最后來(lái)看JavaScript:
// Get the modal
var modal = document.getElementById("myModal");
// Get the image and insert it inside the modal - use its "alt" text as a caption
var img = document.getElementById("myImg");
var modalImg = document.getElementById("img01");
var captionText = document.getElementById("caption");
img.onclick = function(){
modal.style.display = "block";
modalImg.src = this.src;
captionText.innerHTML = this.alt;
}
// Get the element that closes the modal
var span = document.getElementsByClassName("close")[0];
// When the user clicks on (x), close the modal
span.onclick = function() {
modal.style.display = "none";
}
JavaScript的部分,主要是將第一張圖片的資料用到燈箱當(dāng)中,像是src等,并將燈箱顯示出來(lái)。另外也完成了關(guān)閉按鈕的功能:隱藏?zé)粝洹?/p>
W3Schools系列的代碼都在GitHub上:W3Schools GitHub
W3Schools教學(xué)系列W3Schools是知名的網(wǎng)頁(yè)設(shè)計(jì)/前端開發(fā)教學(xué)網(wǎng)站,不僅提供HTML、CSS、JavaScript等的詳盡教學(xué),還可以把它當(dāng)作說(shuō)明文件(Documents)。有經(jīng)驗(yàn)的前端或多或少已經(jīng)接觸過(guò)這個(gè)網(wǎng)站,因?yàn)樗?jīng)常出現(xiàn)在搜索結(jié)果的前幾項(xiàng)。其中,它的How To部分更是包含了大量非常實(shí)用的例子,例如,如何制作SlideShow(圖片輪播)、Lightbox、Parallax(視差效果)等等。因此我想做一系列的影片專門介紹這些How To。
W3Schools系列全部視頻:
Float響應(yīng)式網(wǎng)頁(yè)布局
Flexbox響應(yīng)式網(wǎng)頁(yè)布局
CSS Grid響應(yīng)式網(wǎng)頁(yè)布局
幻燈片如何實(shí)現(xiàn)
響應(yīng)式導(dǎo)航如何實(shí)現(xiàn)
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/102830.html
摘要:燈箱效果是將圖片放大彈出顯示,并將背景變暗,以突出圖片。燈箱效果教學(xué)燈箱效果例子視頻連結(jié)站燈箱效果實(shí)現(xiàn)燈箱效果的重點(diǎn)在于預(yù)設(shè)隱藏?zé)粝洹D片放大的效果可透過(guò)動(dòng)畫實(shí)現(xiàn)。 燈箱(Lightbox)效果是將圖片放大彈出顯示,并將背景變暗,以突出圖片。這種效果可用于單張圖片,也可用于圖片庫(kù)。其原理跟模態(tài)框(Modal)基本一樣。W3Schools有分Modal Images和Lightbox兩個(gè)...
摘要:燈箱效果是將圖片放大彈出顯示,并將背景變暗,以突出圖片。燈箱效果教學(xué)燈箱效果例子視頻連結(jié)站燈箱效果實(shí)現(xiàn)燈箱效果的重點(diǎn)在于預(yù)設(shè)隱藏?zé)粝洹D片放大的效果可透過(guò)動(dòng)畫實(shí)現(xiàn)。 燈箱(Lightbox)效果是將圖片放大彈出顯示,并將背景變暗,以突出圖片。這種效果可用于單張圖片,也可用于圖片庫(kù)。其原理跟模態(tài)框(Modal)基本一樣。W3Schools有分Modal Images和Lightbox兩個(gè)...
摘要:幻燈片是網(wǎng)頁(yè)上常見的一項(xiàng)功能,今日我們來(lái)看看上的幻燈片教學(xué)。這就是幻燈片最核心的邏輯。系列全部視頻響應(yīng)式網(wǎng)頁(yè)布局響應(yīng)式網(wǎng)頁(yè)布局響應(yīng)式網(wǎng)頁(yè)布局幻燈片如何實(shí)現(xiàn)響應(yīng)式導(dǎo)航如何實(shí)現(xiàn) 幻燈片(Slideshow)是網(wǎng)頁(yè)上常見的一項(xiàng)功能,今日我們來(lái)看看W3Schools上的幻燈片教學(xué)。 W3Schools 幻燈片教學(xué) 幻燈片例子 簡(jiǎn)化版幻燈片例子 視頻連結(jié) B站 YouTube 幻燈片(S...
摘要:幻燈片是網(wǎng)頁(yè)上常見的一項(xiàng)功能,今日我們來(lái)看看上的幻燈片教學(xué)。這就是幻燈片最核心的邏輯。系列全部視頻響應(yīng)式網(wǎng)頁(yè)布局響應(yīng)式網(wǎng)頁(yè)布局響應(yīng)式網(wǎng)頁(yè)布局幻燈片如何實(shí)現(xiàn)響應(yīng)式導(dǎo)航如何實(shí)現(xiàn) 幻燈片(Slideshow)是網(wǎng)頁(yè)上常見的一項(xiàng)功能,今日我們來(lái)看看W3Schools上的幻燈片教學(xué)。 W3Schools 幻燈片教學(xué) 幻燈片例子 簡(jiǎn)化版幻燈片例子 視頻連結(jié) B站 YouTube 幻燈片(S...
閱讀 901·2021-11-22 12:04
閱讀 2106·2021-11-02 14:46
閱讀 625·2021-08-30 09:44
閱讀 2110·2019-08-30 15:54
閱讀 731·2019-08-29 13:48
閱讀 1598·2019-08-29 12:56
閱讀 3454·2019-08-28 17:51
閱讀 3289·2019-08-26 13:44