Javascript 页外滑动导航
我正在尝试创建一个简单的页外滑动导航,但是我在一些代码(主要是CSS)上堆叠 我试图创建一个3D效果,而不是一个简单的幻灯片效果,隐藏和取消隐藏侧边栏上的菜单 以下是我目前的工作: 我想创建一个3D幻灯片,效果如下: 因此,我尝试从这个JSFIDLE复制一些CSS,但是我没有得到我想要的。 在3D幻灯片JSFIDLE上复制一些代码后,请参见我更新的CSSJavascript 页外滑动导航,javascript,jquery,html,css,Javascript,Jquery,Html,Css,我正在尝试创建一个简单的页外滑动导航,但是我在一些代码(主要是CSS)上堆叠 我试图创建一个3D效果,而不是一个简单的幻灯片效果,隐藏和取消隐藏侧边栏上的菜单 以下是我目前的工作: 我想创建一个3D幻灯片,效果如下: 因此,我尝试从这个JSFIDLE复制一些CSS,但是我没有得到我想要的。 在3D幻灯片JSFIDLE上复制一些代码后,请参见我更新的CSS #site-wrapper { position: relative; overflow: hidden; width
#site-wrapper {
position: relative;
overflow: hidden;
width: 100%;
height: 5000px; /* Temp: Simulates a tall page. */
-webkit-perspective: 1500px;
perspective: 1500px;
-webkit-perspective-origin: 0% 50%;
perspective-origin: 0% 50%;
}
#site-canvas {
width: 100%;
height: 100%;
position: relative;
-webkit-transform: translateX(0);
transform: translateX(0);
-webkit-transition: .3s ease all;
transition: .3s ease all;
padding: 5% 0; /* Temp: Just spacing. */
}
#site-menu {
width: 300px;
height: 100%;
position: absolute;
top: 0;
left: -300px;
background: #428bca;
padding: 15px;
-webkit-transform: translate3d(-100%, 0, 0) rotateY(-90deg);
transform: translate3d(-100%, 0, 0) rotateY(-90deg);
-webkit-transform-origin: 100% 50%;
transform-origin: 100% 50%;
-webkit-transform-style: preserve-3d;
transform-style: preserve-3d;
}
#site-wrapper.show-nav #site-canvas {
-webkit-transform: translateX(300px);
transform: translateX(300px);
visibility: visible;
-webkit-transition: -webkit-transform 0.5s;
transition: transform 0.5s;
-webkit-transform: translate3d(-100%, 0, 0) rotateY(0deg);
transform: translate3d(-100%, 0, 0) rotateY(0deg);
}
你介意检查一下我哪里出错了吗
如果您还可以更新我的JSFIDLE,以便我可以可视化它?我已经在您的页面中添加了一些CSS 默认情况下,菜单向内旋转90度,当应用“显示导航”类时,将在滑动div和菜单本身上进行转换。这样,菜单可以随透视旋转到原来的0度
查看它,看看它是否是您想要的。注意:如果没有添加新的CSS,我的代码就是这样的:我知道这只是CSS,而不是JavaScript或jQuery。我只想在动画中创建一个3D幻灯片,看起来像这样。主要是CSS3。太好了!谢谢正是我要找的!干杯!:)
/* transition the menu with perspective on "show-nav" */
#site-wrapper.show-nav #site-menu {
-webkit-transform-origin: 100% 50%;
transform-origin: 100% 50%;
-webkit-transform: perspective(600px) rotateY(0deg);
transform: perspective(600px) rotateY(0deg);
}