html - 怎么用CSS做从左右网页过渡的滑入?

标签 html css css-animations css-transforms

我使用类似于此(下图)的 CSS 创建了从右侧和左侧滑入的页面转换。我的想法来自 MDN CSS Animations .

/* -webkit-, -moz-, -o- vendor prefixes omitted for brevity.
    See http://css-tricks.com/snippets/css/keyframe-animation-syntax/
    */
.slidein-from-right {
    animation: slidein-from-right 500ms;
}
@keyframes slidein-from-right {
    from {
        margin-left: 100%;
        width: 300%;
        opacity: 0;
    }
    to {
        margin-left: 0%;
        width: 100%;
        opacity: 1;
    }
}
.slidein-from-left {
    animation: slidein-from-left 500ms;
}
@keyframes slidein-from-left {
    from {
        margin-right: 100%;
        width: 300%;
        opacity: 0;
    }
    to {
        margin-right: 0%;
        width: 100%;
        opacity: 1;
    }
}

这适用于从右侧滑入的页面。但是,从左侧滑入不起作用(因为包含的 div 向左浮动)。从右滑入和从左滑入的页面过渡,我尝试了绝对定位和其他东西,但总是有问题。例如,向右浮动会导致元素向右太远。使用其他选项,我无法使页面居中、边距和填充正确。

最好的方法是什么?只支持现代浏览器就可以了。

最佳答案

您可以使用 jquery 移动页面转换,这很棒。

或者您可以像这样使用 CSS 转换。不要弄乱页面的设计布局。只是改造它!请注意,在撰写本文时,CSS transforms是实验性的,但在最近的浏览器(FF29、Chrome 35 和 IE11)中测试效果很好。

/* -webkit-, -moz-, -o- vendor prefixes omitted for brevity.
    See http://css-tricks.com/snippets/css/keyframe-animation-syntax/
    */
.slidein-from-right {
    -webkit-animation: slidein-from-right2 500ms;
}
@-webkit-keyframes slidein-from-right2 {
    from {
        opacity: 0;
        -webkit-transform:translateX(100%);
    }
    to {
        opacity: 1;
        -webkit-transform:translateX(0%);
    }
}

请参阅此插件的工作示例:http://plnkr.co/edit/EUPuHN . (如果你想翻录 CSS 代码,从 plunker 复制它......它有所有供应商前缀)

关于html - 怎么用CSS做从左右网页过渡的滑入?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24142682/

相关文章:

performance - 糟糕的 CSS 动画性能 - 没有浏览器绘制

php - 在html中显示sql中的值选择选项不显示值

android - Android 浏览器是否可以显示无缝 IFRAMES?

javascript - Google Map Api - IE - 大小 map

html - 如何在 HTML 中整齐地自动换行电子邮件地址

css - 为什么我的弹跳动画如此跳跃而不是流畅?

html - 使用显示器时溢出不起作用 :table-cell

javascript - 表单按钮禁用 onsubmit 但表单未在 javascript 中提交

android - cordova 应用程序中背景图像的正确分辨率是多少

html - Accordion 下拉菜单动画不正确