水平メニューには、同じスペースに表示する要素が多すぎます。私は、ユーザが方向矢印をクリックしたときにコンテナが水平に一方の側に翻訳されるように、カルーセル効果を作成したいと思います。次の要素が表示されるようにright
現在の要素をクリックすると、左側に変換なるように私はjQueryの/ CSSでこれをアニメーション化するにはどうすればよいjQueryを使用した水平メニューの基本カルーセル
.container {
\t display: flex;
\t align-items: center;
\t height: 70px;
\t width: 420px;
border: 1px solid black;
overflow: hidden;
}
a {
\t display: flex;
\t align-items: center;
\t justify-content: center;
\t margin: 0 10px;
\t min-width: 50px;
\t min-height: 50px;
\t border: 0.1px solid tomato;
}
#left, #right {
\t border: 1px solid orange;
padding: 5px;
margin: 10px 60px;
display: inline-block;
cursor: pointer;
}
* {
\t -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box;
\t position: relative;
}
<div class="container">
\t <a>1</a>
\t <a>2</a>
\t <a>3</a>
\t <a>4</a>
\t <a>5</a>
\t <a>6</a>
\t <a>7</a>
\t <a>8</a>
\t <a>9</a>
\t <a>10</a>
\t <a>11</a>
\t <a>12</a>
\t <a>13</a>
\t <a>14</a>
</div>
<div id="left">left arrow</div>
<div id="right">right arrow</div>
?
私はtranslate(%)を使用することを考えていましたが、divの幅はコンテナ内の要素の数に依存しています。 また、表示する要素が2つしかない場合、アニメーションを調整する必要があります。
私は少し失われているので、どんな助けも歓迎です!
あなたがあなたの必要性を達成しようとしたものを共有してください。 –
私が試みたのは、別のコンテナの矢印をクリックしたときに、 '-webkit-transform:translate(-420px、0);'(または+ 420px)クラスを追加していたもので、矛盾しすぎて、残りの要素は420ピクセル以下のスペースを占めていました。私はこれが問題の正しいアプローチだとは思わない – eloism