CSS如何做到心跳的动画

html-css020

CSS如何做到心跳的动画,第1张

.heart {

  color: #EB5E28

  animation: heathing 1s ease infinite

}

@keyframes heathing {

  0% {

    transform: scale(0.75)

  }

  20% {

    transform: scale(1)

  }

  40% {

    transform: scale(0.75)

  }

  60% {

    transform: scale(1)

  }

  80% {

    transform: scale(0.75)

  }

  100% {

    transform: scale(0.75)

  }

}

假定这个元素id=heart,则答案如此。

<!DOCTYPE html>

<html>

<head>

<meta charset="UTF-8">

<title>HTML5爱心跳动动画DEMO演示</title>

<style>

@import url(http://fonts.googleapis.com/css?family=Inconsolata:400,700)

@import url(http://fonts.googleapis.com/css?family=Hammersmith+One)

body {

background-color: #ccc

}

.container {

width: 512px

height: 380px

margin: auto

margin-top: 0

}

.heart {

z-index: 1

width: 150px

height: 150px

position: absolute

top: 50%

margin-top: -75px

left: 50%

margin-left: -75px

background-size: 100%

background-repeat: no-repeat

background-image:url("data:image/svg+xmlbase64,PHN2ZyB2ZXJzaW9uPSIxLjEiIGlkPSJMYXllcl8xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4PSIwcHgiIHk9IjBweCINCgkgd2lkdGg9IjE3M3B4IiBoZWlnaHQ9IjE1OHB4IiB2aWV3Qm94PSIwIDAgMTczIDE1OCIgZW5hYmxlLWJhY2tncm91bmQ9Im5ldyAwIDAgMTczIDE1OCIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+DQo8cGF0aCBmaWxsPSIjRUY0NjU3IiBkPSJNMTU3LjMzMSwxNS41MDRjLTE5LjU1OS0xOS41NTktNTEuMjcxLTE5LjU1OS03MC44MzEsMGMtMTkuNTU5LTE5LjU1OS01MS4yNzEtMTkuNTU5LTcwLjgzMSwwDQoJYy0xOS41NTksMTkuNTU5LTE5LjU1OSw1MS4yNzEsMCw3MC44MzFsNzAuODMxLDcwLjgzbDcwLjgzMS03MC44M0MxNzYuODksNjYuNzc1LDE3Ni44OSwzNS4wNjQsMTU3LjMzMSwxNS41MDR6Ii8+DQo8L3N2Zz4=")

}

.hometown {

font-family:'Inconsolata', sans-serif

font-weight: bold

font-size: 2.0em

text-transform: uppercase

position: relative

z-index: 1

width: 512px

height: 512px

color: #FFF

}

#top {

width: 200px

margin: auto

position: relative

}

#top span {

height: 350px

position: absolute

width: 20px

left: 50%

margin-left: -10px

top: 110px

}

.char1 {

transform: rotate(-36deg)

}

.char2 {

transform: rotate(-24deg)

}

.char3 {

transform: rotate(-12deg)

}

.char4 {

transform: rotate(0deg)

}

.char5 {

transform: rotate(12deg)

}

.char6 {

transform: rotate(24deg)

}

.char7 {

transform: rotate(36deg)

}

#bottom span {

height: 350px

line-height: 700px

position: absolute

width: 20px

left: 50%

margin-left: -10px

top: 10px

}

#bottom .char1 {

transform: rotate(36deg)

}

#bottom .char2 {

transform: rotate(27deg)

}

#bottom .char3 {

transform: rotate(18deg)

}

#bottom .char4 {

transform: rotate(9deg)

}

#bottom .char5 {

transform: rotate(0deg)

}

#bottom .char6 {

transform: rotate(-9deg)

}

#bottom .char7 {

transform: rotate(-18deg)

}

#bottom .char8 {

transform: rotate(-27deg)

}

#bottom .char9 {

transform: rotate(-36deg)

}

.city {

font-family:"Hammersmith One"

display: inline-block

width: 100%

height: 300px

padding-top: 45px

text-align: center

font-size: 3.0em

z-index: 100

position: absolute

top: 50%

margin-top: -110px

}

.heart {

animation: HEARTBEAT 2.5s infinite

}

#top span {

animation: BOUNCE 2.5s infinite

}

@keyframes HEARTBEAT {

0% {

transform: scale(1)

}

5% {

transform: scale(1.3)

}

10% {

transform: scale(1.1)

}

15% {

transform: scale(1.5)

}

50% {

transform: scale(1)

}

100% {

transform: scale(1)

}

}

@keyframes BOUNCE {

0% {

top: 110px

}

10% {

top: 80px

}

15% {

top: 85px

}

20% {

top: 70px

}

75% {

top: 110px

}

100% {

top: 110px

}

}

</style>

<script src="js/prefixfree.min.js"></script>

</head>

<body>

<div class="container bg">

<div class="hometown">

<div class="heart">

</div>

<div id="top">Made in</div>

<div class="city">Boise</div>

<div id="bottom">With love</div>

</div>

</div>

<div style="text-align:centerclear:both">

<script src="/gg_bd_ad_720x90.js" type="text/javascript"></script>

<script src="/follow.js" type="text/javascript"></script>

</div>

<script src='js/jquery.js'></script>

<script src='js/jquery.lettering.js'></script>

<script src="js/index.js"></script>

</body>

</html>

js部分

心脏如此大运动量、高负荷地运转,难道它就不会疲劳吗?

原来,“生命发动机”——心脏不仅工作效率极高,它还有一套“自动控制装置”,它们在大脑的统一指挥下,发出和传递心脏跳动的命令。一个人如果每分钟心跳75次,那么1次心跳的时间就是0.8秒,科学家们把心跳一次所需的时间称为一个心动周期。在0.8秒这一个心动周期中,心房的收缩是0.1秒,余下的0.7秒中心房的肌肉就处在“休息”阶段。心室的收缩时间是0.3秒,心室肌肉虽比心房肌肉劳累一些,但仍有0.5秒是处在休息状态。可见,在心脏的每一次跳动中,实际上有一半以上的时间是休息的。正是由于心脏能够这样有劳有逸地安排工作,才能保证它连续不停地工作一辈子。

随着科学研究的不断深入,科学家们发现了一个有趣的事情:到目前为止,世界上还没有发现任何一例心脏受到癌症侵袭的病历,这也许得益于心肌不断地剧烈活动。这种活动似乎能限制甚至阻止癌细胞的产生和转移,这是为什么,至今还是一个谜。

个体不能没有心脏的跳动,心脏一旦停止工作就意味着死亡。