【发布时间】:2018-05-23 12:12:53
【问题描述】:
我需要一个仅使用 CSS 的解决方案,当单击时可以在同一页面上放大图像,并带有弹出框和淡出背景。
我的主布局设置有一个主图像,然后是其下方的缩略图。当用户单击主图像或任何缩略图时,我希望弹出框显示更大的图像尺寸。
然后,当用户单击图像并出现弹出窗口时,我需要在角落里有一个十字,然后关闭弹出框。
这是一个例子:https://www.ebay.co.uk/itm/352338537173?ViewItem=&item=352338537173
虽然上面的示例也将缩略图更改为我不想要的主图像。因此,这是一个更简单的版本,当点击缩略图时,它们只会放大到与主图像相同的大小。
目前我做的代码主要布局如下:
CSS
#images {
width: 100%%;
margin: 0 auto;
max-width: 500px;
}
#main-image {
width: 100%;
}
#main-image img {
display: block;
max-width: 100%;
height: auto;
}
#thumbnail-images {
width: 100%;
margin: 0;
overflow: auto;
padding: 15px 0;
}
#thumbnail-images ul {
float: left;
margin-bottom: 0;
white-space: nowrap;
list-style: none;
padding: 0;
}
#thumbnail-images li {
width: 20%;
margin: 7px;
text-align: center;
float: left;
display: block;
}
#thumbnail-images li img {
width: 100%;
position: relative;
cursor: pointer;
margin-bottom: 15px;
}
HTML
<div id="images">
<div id="main-image"><a href="https://i.vimeocdn.com/video/673111786_960.jpg"><img src="https://i.vimeocdn.com/video/673111786_960.jpg" /></a></div>
<div id="thumbnail-images">
<ul>
<li><a href="https://i.vimeocdn.com/video/673111786_960.jpg"><img src="https://i.vimeocdn.com/video/673111786_960.jpg" /></a></li>
<li><a href="https://i.vimeocdn.com/video/673111786_960.jpg"><img src="https://i.vimeocdn.com/video/673111786_960.jpg" /></a></li>
<li><a href="https://i.vimeocdn.com/video/673111786_960.jpg"><img src="https://i.vimeocdn.com/video/673111786_960.jpg" /></a></li>
<li><a href="https://i.vimeocdn.com/video/673111786_960.jpg"><img src="https://i.vimeocdn.com/video/673111786_960.jpg" /></a></li>
</ul>
</div>
</div>
任何帮助或建议将不胜感激。
谢谢
【问题讨论】:
-
您在寻找模态弹出窗口吗?请查看此示例是否是您要查找的示例:w3schools.com/bootstrap/bootstrap_modal.asp。如果是这样,我可以为您的情况提供适当的答案。
-
@user2796515 是的,和 w3schools.com/howto/howto_css_modal_images.asp 类似。但它必须只有 CSS,所以没有 javascript 等。这个例子ebay.co.uk/itm/352338537173?ViewItem=&item=352338537173 没有 javascript,我希望它与此类似,但我不需要缩略图更新到主图像。单击缩略图时,我只想让它们立即弹出到更大的图像中。