问题
I'm trying to vertically position elements using translate percentages so I can easily animate them. In the following example the percentage doesn't even move my element regardless of the y value.
http://jsfiddle.net/DUdzC/3/
<div id="experiment-slide-display">
<div id="slide">
<div class="experiment"><div class="experiment-title">abstraction layer</div></div>
</div>
</div>
css:
html{width:100%;height:100%; margin: 0;}
body{overflow:hidden; margin:0; width:100%; height:100%;}
#experiment-slide-display{top: 50%; left:50%; position:absolute;border:1px solid #000000;}
#slide{height:2000px; top:-1000px; position: absolute; left:0; width:20px;}
.experiment{position: relative; -webkit-transform: translate(0%,50%); -moz-transform: translate(0%,50%); transform: translate(0%,50%); }
.experiment-title{position: absolute;}
回答1:
Just make some adjustment to your code and make it happen...
Demo:- http://jsfiddle.net/DUdzC/4/
CSS:-
#experiment-slide-display { width: 100%; height:100%; top:0; left:0; position:absolute; }
#slide { height:20px; top:50%; position: absolute; left:50%; width:200px; margin-left:-100px; margin-top:-10px; text-align:center; }
.experiment { position: relative; -webkit-transform: translate(0%,50%); -moz-transform: translate(0%,50%); transform: translate(0%,50%); width:100%; }
.experiment-title { position: absolute; top:0; left:0; width:100%; }
Thanks hope this works for you...
来源:https://stackoverflow.com/questions/17539410/vertically-centering-elements-using-translate-percentages