dialog标签实现原生左侧弹出层效果代码
代码语言:html
所属分类:弹出层
代码描述:dialog标签实现原生左侧弹出层效果代码
下面为部分代码预览,完整代码请点击下载或在bfwstudio webide中打开
<!DOCTYPE html>
<html lang="en" >
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<style>
@import "//repo.bfw.wiki/bfwrepo/css/open-props.css" layer(support.design-system);
@import "//repo.bfw.wiki/bfwrepo/css/open-props.normalize.min.css" layer(support.demo);
@import "//repo.bfw.wiki/bfwrepo/css/open-props.buttons.css" layer(support.demo);
@import "https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@24,400,0,0" layer(support.demo);
dialog.slide-out {
--_duration: .5s;
--_card-inset: var(--size-5);
/* inner card can query the dialog for h/w */
container: dialog-panel / size;
transition:
display var(--_duration) allow-discrete,
overlay var(--_duration) allow-discrete;
padding: 0;
background: none;
box-shadow: none;
block-size: 100dvh;
max-block-size: 100%;
inline-size: min(var(--size-content-2), 80vw);
margin: 0;
margin-inline-end: auto;
overflow-y: hidden;
&::backdrop {
transition: opacity var(--_duration) var(--ease-4);
opacity: 0;
background-color: light-dark(#0003, #0008);
}
> section {
@media (prefers-reduced-motion: reduce) {
transition: opacity var(--_duration) var(--ease-2);
opacity: 0;
}
@media (prefers-reduced-motion: no-preference) {
transition: translate var(--_duration) var(--ease-in-out-5);
translate: calc((100% + var(--_card-inset)) * -1) 0;
}
b.........完整代码请登录后点击上方下载按钮下载查看
网友评论0