最近我問了一個類似的問題關於過渡動畫divs。 (See this post)CSS3 Div動畫相對間距
下面的代碼片段顯示了我的解決方案。
但是,僅當寬度以像素爲單位給出時,動畫才起作用,而不是以百分比。
有沒有人知道解決這個問題的方法?
EDIT(更多信息澄清我的問題):
在網站的這一部分,我有一個標題,應始終保持不變,3頁的用戶輸入可以「刷卡」的內容。
因此,頁面左邊距的範圍從-100%到+ 100%不等。
我想要一個滑動動畫,以便用戶可以從第2頁(即顯示圖像)切換到第3頁(即與圖像相關的文本)。
由於不同的瀏覽器窗口大小,我需要寬度爲百分比。可悲的是...
$(document).ready(function() {
$(".next").click(function() {
var current = $(".container").css("left");
if (current == "-200px") {
current = "-400px";
} else if (current == "0px") {
current = "-200px";
}
$(".container").css("left", current);
});
$(".prev").click(function() {
var current = $(".container").css("left");
if (current == "-200px") {
current = "0px";
} else if (current == "-400px") {
current = "-200px";
}
$(".container").css("left", current);
});
});
.row {
border: 1px solid black;
height: 200px;
margin: 0;
width: 200px;
padding: 0;
display: block;
position: relative;
overflow: hidden;
}
.container {
height: 200px;
margin: 0;
width: 600px;
padding: 0;
display: block;
position: absolute;
left: -200px;
top: 0;
-webkit-transition: left 0.5s ease-in-out;
-moz-transition: left 0.5s ease-in-out;
transition: left 0.5s ease-in-out;
}
.ins {
width: 200px;
float: left;
height: 200px;
margin: 0;
padding: 0;
background-color: red;
}
.div1 {
background-color: red;
}
.div2 {
background-color: green;
}
.div3 {
background-color: blue;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<!DOCTYPE html>
<html>
<!-- Thanks to kittyCat at stackoverflow.com for helping me with this website.-->
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>TITLE</title>
<meta name="Title" content="Main">
</head>
<body>
<div class="row">
<div class="container">
<div class="ins div1">div-1</div>
<div class="ins div2">div-2</div>
<div class="ins div3">div-3</div>
</div>
</div>
<button class="prev">prev</button>
<button class="next">next</button>
</body>
</html>
應該用「px」單位代替哪些百分比值? – guest271314
100%(我希望它填充整個瀏覽器窗口)的寬度和80%左右的高度。 – Narusan