Css 如何创建通过单击触发的动画

Css 如何创建通过单击触发的动画,css,Css,如何实现以下效果:当用户单击链接时,他会看到当前页面的内容慢慢向上移动,然后出现下一页的新内容。如果可能的话,我宁愿只使用CSS。只使用CSS的解决方案可以通过转换来实现。这里是,代码如下: CSS .message { background:#181818; color:#FFF; position: absolute; top: -250px; left: 0; width: 100%; height: 250px; paddi

如何实现以下效果:当用户单击链接时,他会看到当前页面的内容慢慢向上移动,然后出现下一页的新内容。如果可能的话,我宁愿只使用CSS。

只使用CSS的解决方案可以通过转换来实现。这里是,代码如下:

CSS

.message {
    background:#181818;
    color:#FFF;
    position: absolute;
    top: -250px;
    left: 0;
    width: 100%;
    height: 250px;
    padding: 20px;
    transition: top 300ms cubic-bezier(0.17, 0.04, 0.03, 0.94);
    overflow: hidden;
    box-sizing: border-box;

    }

.message h1 {
  color:#FFF;
}

#toggle {
  position:absolute;
  appearance:none;
  cursor:pointer;
  left:-100%;
  top:-100%;
}

#toggle + label {
  position:absolute;
  cursor:pointer;
  padding:10px;
  background: #26ae90;
width: 100px;
border-radius: 3px;
padding: 8px 10px;
color: #FFF;
line-height:20px;
font-size:12px;
text-align:center;
-webkit-font-smoothing: antialiased;
cursor: pointer;
  margin:20px 50px;
  transition:all 500ms ease;
}
#toggle + label:after {
  content:"Open" 
}

.container {
transition: margin 300ms cubic-bezier(0.17, 0.04, 0.03, 0.94);
  padding:5em 3em;
}

#toggle:checked ~ .message {
  top: 0;
}

#toggle:checked ~ .container {
  margin-top: 250px;
}

#toggle:checked + label {
  background:#dd6149;
}

#toggle:checked + label:after {
  content:"Close"
}
HTML

<input type="checkbox" name="toggle" id="toggle" />    
<label for="toggle"></label>      
<div class="container">
  <h1> Click the Open button to see hidden mesage.</h1>    
</div>
<div class="message">
  <h1> hello, I'm a hidden message. You found it.</h1>
</div>

单击“打开”按钮以查看隐藏的台面。
你好,我是一条隐藏的消息。你找到了。

仅CSS解决方案可以通过转换实现。这里是,代码如下:

CSS

.message {
    background:#181818;
    color:#FFF;
    position: absolute;
    top: -250px;
    left: 0;
    width: 100%;
    height: 250px;
    padding: 20px;
    transition: top 300ms cubic-bezier(0.17, 0.04, 0.03, 0.94);
    overflow: hidden;
    box-sizing: border-box;

    }

.message h1 {
  color:#FFF;
}

#toggle {
  position:absolute;
  appearance:none;
  cursor:pointer;
  left:-100%;
  top:-100%;
}

#toggle + label {
  position:absolute;
  cursor:pointer;
  padding:10px;
  background: #26ae90;
width: 100px;
border-radius: 3px;
padding: 8px 10px;
color: #FFF;
line-height:20px;
font-size:12px;
text-align:center;
-webkit-font-smoothing: antialiased;
cursor: pointer;
  margin:20px 50px;
  transition:all 500ms ease;
}
#toggle + label:after {
  content:"Open" 
}

.container {
transition: margin 300ms cubic-bezier(0.17, 0.04, 0.03, 0.94);
  padding:5em 3em;
}

#toggle:checked ~ .message {
  top: 0;
}

#toggle:checked ~ .container {
  margin-top: 250px;
}

#toggle:checked + label {
  background:#dd6149;
}

#toggle:checked + label:after {
  content:"Close"
}
HTML

<input type="checkbox" name="toggle" id="toggle" />    
<label for="toggle"></label>      
<div class="container">
  <h1> Click the Open button to see hidden mesage.</h1>    
</div>
<div class="message">
  <h1> hello, I'm a hidden message. You found it.</h1>
</div>

单击“打开”按钮以查看隐藏的台面。
你好,我是一条隐藏的消息。你找到了。

仅CSS解决方案可以通过转换实现。这里是,代码如下:

CSS

.message {
    background:#181818;
    color:#FFF;
    position: absolute;
    top: -250px;
    left: 0;
    width: 100%;
    height: 250px;
    padding: 20px;
    transition: top 300ms cubic-bezier(0.17, 0.04, 0.03, 0.94);
    overflow: hidden;
    box-sizing: border-box;

    }

.message h1 {
  color:#FFF;
}

#toggle {
  position:absolute;
  appearance:none;
  cursor:pointer;
  left:-100%;
  top:-100%;
}

#toggle + label {
  position:absolute;
  cursor:pointer;
  padding:10px;
  background: #26ae90;
width: 100px;
border-radius: 3px;
padding: 8px 10px;
color: #FFF;
line-height:20px;
font-size:12px;
text-align:center;
-webkit-font-smoothing: antialiased;
cursor: pointer;
  margin:20px 50px;
  transition:all 500ms ease;
}
#toggle + label:after {
  content:"Open" 
}

.container {
transition: margin 300ms cubic-bezier(0.17, 0.04, 0.03, 0.94);
  padding:5em 3em;
}

#toggle:checked ~ .message {
  top: 0;
}

#toggle:checked ~ .container {
  margin-top: 250px;
}

#toggle:checked + label {
  background:#dd6149;
}

#toggle:checked + label:after {
  content:"Close"
}
HTML

<input type="checkbox" name="toggle" id="toggle" />    
<label for="toggle"></label>      
<div class="container">
  <h1> Click the Open button to see hidden mesage.</h1>    
</div>
<div class="message">
  <h1> hello, I'm a hidden message. You found it.</h1>
</div>

单击“打开”按钮以查看隐藏的台面。
你好,我是一条隐藏的消息。你找到了。

仅CSS解决方案可以通过转换实现。这里是,代码如下:

CSS

.message {
    background:#181818;
    color:#FFF;
    position: absolute;
    top: -250px;
    left: 0;
    width: 100%;
    height: 250px;
    padding: 20px;
    transition: top 300ms cubic-bezier(0.17, 0.04, 0.03, 0.94);
    overflow: hidden;
    box-sizing: border-box;

    }

.message h1 {
  color:#FFF;
}

#toggle {
  position:absolute;
  appearance:none;
  cursor:pointer;
  left:-100%;
  top:-100%;
}

#toggle + label {
  position:absolute;
  cursor:pointer;
  padding:10px;
  background: #26ae90;
width: 100px;
border-radius: 3px;
padding: 8px 10px;
color: #FFF;
line-height:20px;
font-size:12px;
text-align:center;
-webkit-font-smoothing: antialiased;
cursor: pointer;
  margin:20px 50px;
  transition:all 500ms ease;
}
#toggle + label:after {
  content:"Open" 
}

.container {
transition: margin 300ms cubic-bezier(0.17, 0.04, 0.03, 0.94);
  padding:5em 3em;
}

#toggle:checked ~ .message {
  top: 0;
}

#toggle:checked ~ .container {
  margin-top: 250px;
}

#toggle:checked + label {
  background:#dd6149;
}

#toggle:checked + label:after {
  content:"Close"
}
HTML

<input type="checkbox" name="toggle" id="toggle" />    
<label for="toggle"></label>      
<div class="container">
  <h1> Click the Open button to see hidden mesage.</h1>    
</div>
<div class="message">
  <h1> hello, I'm a hidden message. You found it.</h1>
</div>

单击“打开”按钮以查看隐藏的台面。
你好,我是一条隐藏的消息。你找到了。

这里有一种方法:

HTML将所有页面包含在
div(或其他)中

jQuery

$('a').click(function(event){ // when click on any link <a>
    event.preventDefault(); // prevents <a> natural behavior (sending you somewhere)
    var URL = $(this).attr('href'); // stores the <a> href attribute
    $('main').animate({top:'-=100%'},1000,function(){ // moves up <main> and when it's gone…
        window.location.href = URL; // sends you where you belong
    });
});
main{
位置:固定;顶部:0;左侧:0;
宽度:100%;高度:100%;
背景色:#DDD;
填充:10px;
框大小:边框框;
}

这里有一种方法:

HTML将所有页面包含在
div(或其他)中

jQuery

$('a').click(function(event){ // when click on any link <a>
    event.preventDefault(); // prevents <a> natural behavior (sending you somewhere)
    var URL = $(this).attr('href'); // stores the <a> href attribute
    $('main').animate({top:'-=100%'},1000,function(){ // moves up <main> and when it's gone…
        window.location.href = URL; // sends you where you belong
    });
});
main{
位置:固定;顶部:0;左侧:0;
宽度:100%;高度:100%;
背景色:#DDD;
填充:10px;
框大小:边框框;
}

这里有一种方法:

HTML将所有页面包含在
div(或其他)中

jQuery

$('a').click(function(event){ // when click on any link <a>
    event.preventDefault(); // prevents <a> natural behavior (sending you somewhere)
    var URL = $(this).attr('href'); // stores the <a> href attribute
    $('main').animate({top:'-=100%'},1000,function(){ // moves up <main> and when it's gone…
        window.location.href = URL; // sends you where you belong
    });
});
main{
位置:固定;顶部:0;左侧:0;
宽度:100%;高度:100%;
背景色:#DDD;
填充:10px;
框大小:边框框;
}

这里有一种方法:

HTML将所有页面包含在
div(或其他)中

jQuery

$('a').click(function(event){ // when click on any link <a>
    event.preventDefault(); // prevents <a> natural behavior (sending you somewhere)
    var URL = $(this).attr('href'); // stores the <a> href attribute
    $('main').animate({top:'-=100%'},1000,function(){ // moves up <main> and when it's gone…
        window.location.href = URL; // sends you where you belong
    });
});
main{
位置:固定;顶部:0;左侧:0;
宽度:100%;高度:100%;
背景色:#DDD;
填充:10px;
框大小:边框框;
}


使用css转换-请参见为淡入转换创建一个css类,为淡出转换创建另一个css类。使用jQuery将适当的类添加到适当的内容容器中。这意味着您必须停止链接,制作动画,然后重新启动链接。这需要JS,而不是CSS。使用CSS转换-请参阅为淡入转换创建CSS类,为淡出转换创建另一个CSS类。使用jQuery将适当的类添加到适当的内容容器中。这意味着您必须停止链接,制作动画,然后重新启动链接。这需要JS,而不是CSS。使用CSS转换-请参阅为淡入转换创建CSS类,为淡出转换创建另一个CSS类。使用jQuery将适当的类添加到适当的内容容器中。这意味着您必须停止链接,制作动画,然后重新启动链接。这需要JS,而不是CSS。使用CSS转换-请参阅为淡入转换创建CSS类,为淡出转换创建另一个CSS类。使用jQuery将适当的类添加到适当的内容容器中。这意味着您必须停止链接,制作动画,然后重新启动链接。你需要的是JS,而不是CSS。@Raoulito你什么意思?穆罕默德写道:“当用户点击一个链接”并进一步“显示下一页的内容”,所以我猜他说的是
链接标签。你的回答与
标记的默认行为不符。@拉乌利托你是什么意思?穆罕默德写道:“当用户单击链接时”并进一步“显示下一页的内容”,所以我假设他说的是
链接标记。你的回答与
标记的默认行为不符。@拉乌利托你是什么意思?穆罕默德写道:“当用户单击链接时”并进一步“显示下一页的内容”,所以我假设他说的是
链接标记。你的回答与
标记的默认行为不符。@拉乌利托你是什么意思?穆罕默德写道:“当用户单击链接时”并进一步“显示下一页的内容”,所以我假设他说的是
链接标记。您的答案不适用于
标记的默认行为。