HTMLElement实现图片相册点击放大效果代码
代码语言:html
所属分类:画廊相册
代码描述:HTMLElement实现图片相册点击放大效果代码
代码标签: HTMLElement 图片 相册 点击 放大
下面为部分代码预览,完整代码请点击下载或在bfwstudio webide中打开
<!DOCTYPE html>
<html lang="en" >
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link type="text/css" rel="stylesheet" href="//repo.bfw.wiki/bfwrepo/css/reset.min.css">
<style>
html:has(dialog[open]) {
overflow: hidden;
scrollbar-gutter: stable;
}
body {
display: grid;
place-items: center;
font-family: system-ui, sans-serif;
}
main {
display: grid;
align-items: center;
gap: 1rem;
padding: 2rem;
grid-template-columns: 1fr 1fr;
}
img {
max-width: 100%;
height: auto;
vertical-align: bottom;
border-radius: 1rem;
}
lightbox-image:defined {
display: block;
cursor: zoom-in;
}
lightbox-image {
max-width: 250px;
}
dialog {
--_gutter: 2rem;
padding: 1rem;
outline: unset;
border: unset;
background: unset;
max-height: 100vh;
cursor: zoom-out;
&::-webkit-backdrop {
background: blue;
opacity: 0.75;
}
&::backdrop {
background: blue;
opacity: 0.75;
}
form {
position: absolute;
opacity: 0;
}
img {
max-height: calc(100vh - var(--_gutter));
}
}
::view-transition-group(active-lightbox-image) {
-webkit-animation-duration: 300ms;
animation-duration: 300ms;
-webkit-animation-timing-function: cubic-bezier(0.16, 1, 0.3, 1);
animation-timing-function: cubic-bezier(0.16, 1, 0.3, 1);
}
</style>
</head>
<body translate="no">
<main>
<lightbox-image dialog-id="lightbox">
<img src='//repo.bfw.wiki/random/300x600/景色' alt=''>
</lightbox-image>
.........完整代码请登录后点击上方下载按钮下载查看
网友评论0