这是我到目前为止 –
https://jsfiddle.net/8216Lntb/
body { background-color: black; margin: 0 auto; height: 100%; width: 100%; } .grow { height: 100vw; /* Origional height */ width: 25%; /* Origional width */ margin: 0px 0 0px 0; /* Just for presentation (Not required) */ float: left; /* Just for presentation (Not required) */ position: relative; /* Just for presentation (Not required) */ transition: height 0.5s; /* Animation time */ -webkit-transition: height 0.5s; /* For Safari */ } .grow:hover { width: 25%; /* This is the height on hover */ }
<html> <head> <title>HOMEPAGE</title> <Meta charset="UTF-8"> <Meta name="viewport" content="width=device-width,initial-scale=1.0"> <link rel="stylesheet" type="text/css" href="style.css" media="screen,projection" /> </head> <body> <div class="grow" style="background-color:#2A75A9;"></div> <div class="grow" style="background-color:#274257;"></div> <div class="grow" style="background-color:#644436;"></div> <div class="grow" style="background-color:#8F6048;"></div> <!--<div class="grow" style="background-color:red;"></div>--> </body> </html>
我想要实现的是这个https://artsandculture.withgoogle.com/en-us/national-parks-service/parks
每次我悬停在一个div上,它会从页面上移除一个,因为它超过了100%。
我的问题是如何做到这一点,以便当一个div扩展他人只是变小,所以他们都留在一个页面
解决方法
I think that you don’t need javascript for this.
html,body{ margin: 0 auto; height: 100%; width: 100%; } body { background-color: black; } #growContainer{ display: table; width:100%; height:100%; } .grow{ display: table-cell; height:100%; width: 25%; -webkit-transition:width 500ms; -moz-transition:width 500ms; transition:width 500ms; } #growContainer:hover .grow{ width:20%; } #growContainer:hover .grow:hover { width:40%; }
<div id="growContainer"> <div class="grow" style="background-color:#2A75A9;"></div> <div class="grow" style="background-color:#274257;"></div> <div class="grow" style="background-color:#644436;"></div> <div class="grow" style="background-color:#8F6048;"></div> </div>