如何创建:标签页式图片库
学习如何使用 CSS 和 JavaScript 创建标签页式图片库。
标签页式图片库
点击图像可展开:




×
创建标签页画廊
第一步 - 添加 HTML:
<!-- 网格:四列 --> <div class="row"> <div class="column"> <img src="img_nature.jpg" alt="Nature" onclick="myFunction(this);"> </div> <div class="column"> <img src="img_snow.jpg" alt="Snow" onclick="myFunction(this);"> </div> <div class="column"> <img src="img_mountains.jpg" alt="Mountains" onclick="myFunction(this);"> </div> <div class="column"> <img src="img_lights.jpg" alt="Lights" onclick="myFunction(this);"> </div> </div> <!-- 展开的图像容器 --> <div class="container"> <!-- 关闭图像 --> <span onclick="this.parentElement.style.display='none'" class="closebtn">×</span> <!-- 扩展图像 --> <img id="expandedImg" style="width:100%"> <!-- 图像文本 --> <div id="imgtext"></div> </div>
ਚਿੱਤਰ ਦੀ ਮੰਗ ਨੂੰ ਫੈਕਸਚਰ ਚਿੱਤਰ ਵਿੱਚ ਦਿਖਾਓ।ਕਿਸੇ ਸਤਾਨ ਵਿੱਚ ਚਿੱਤਰ ਨੂੰ ਕਿਸਤ ਕਰਨ ਤੋਂ ਬਾਅਦ ਸਤਾਨ ਦੇ ਨੇੜੇ ਦੇ ਕੰਟੇਨਰ ਵਿੱਚ ਉਹ ਚਿੱਤਰ ਦਿਖਾਇਆ ਜਾਵੇਗਾ。
ਦੂਜਾ ਕਦਮ - ਕ੍ਰਿਸਟਸ ਜੋੜੋ:
ਚਾਰ ਸਤਾਨਾਂ ਬਣਾਓ ਅਤੇ ਚਿੱਤਰ ਦਾ ਸਟਾਈਲ ਸੈਟ ਕਰੋ:
/* ਗਰਿੱਡ: ਚਾਰ ਸਮਾਨ ਪੱਧਰੀ ਸਤਾਨਾਂ */ .column { float: left; width: 25%; padding: 10px; } /* ਗਰਿੱਡ ਵਿੱਚ ਚਿੱਤਰਾਂ ਦੇ ਸਟਾਈਲ */ .column img { opacity: 0.8; cursor: pointer; } .column img:hover { opacity: 1; } /* ਸਤਾਨਾਂ ਤੋਂ ਬਾਅਦ ਫਲੌਟ ਕਰੋ */ .row:after { content: ""; display: table; clear: both; } /* ਫੈਕਸਚਰ ਚਿੱਤਰ ਦੇ ਪਲੈਕਸ ਕੰਟੇਨਰ (ਬੰਦ ਕਰਨ ਵਾਲੀ ਬਟਨ ਅਤੇ ਟੈਕਸਟ ਲਈ ਸਥਾਨਾਂ ਤੈਅ ਕਰਨ ਲਈ ਨਿਰਧਾਰਿਤ ਕਰੋ) */ .container { position: relative; display: none; } /* ਫੈਕਸਚਰ ਚਿੱਤਰ ਦੇ ਟੈਕਸਟ */ #imgtext { position: absolute; bottom: 15px; left: 15px; color: white; font-size: 20px; } /* ਚਿੱਤਰ ਅੰਦਰ ਬੰਦ ਕਰਨ ਵਾਲੀ ਬਟਨ */ .closebtn { position: absolute; top: 10px; right: 15px; color: white; font-size: 35px; cursor: pointer; }
ਤੀਜਾ ਕਦਮ - ਜਾਵਾਸਕ੍ਰਿਪਟ ਜੋੜੋ:
function myFunction(imgs) { // ਫੈਕਸਚਰ ਚਿੱਤਰ ਪ੍ਰਾਪਤ ਕਰੋ var expandImg = document.getElementById("expandedImg"); // ਚਿੱਤਰ ਟੈਕਸਟ ਪ੍ਰਾਪਤ ਕਰੋ var imgText = document.getElementById("imgtext"); // ਫੈਕਸਚਰ ਚਿੱਤਰ ਵਿੱਚ ਸਾਡੇ ਗਰਿੱਡ ਤੋਂ ਕਿਸੇ ਚਿੱਤਰ ਨੂੰ ਕਿਸਤ ਵਿੱਚ ਵਰਤੇ ਜਾਣ ਵਾਲੇ src expandImg.src = imgs.src; // ਹੁੰਦੇ ਚਿੱਤਰ ਦੀ alt ਵਿਸ਼ੇਸ਼ਤਾ ਦਾ ਮੁੱਲ ਫੈਕਸਚਰ ਚਿੱਤਰ ਦੇ ਅੰਦਰ ਟੈਕਸਟ ਵਜੋਂ ਵਰਤੋ imgText.innerHTML = imgs.alt; // ਪਲੈਕਸ ਇਲੈਕਟਰਨ ਦਿਖਾਓ (ਕ੍ਰਿਸਟਸ ਛੁਪਾਓ) expandImg.parentElement.style.display = "block"; }