検索
ホームページウェブフロントエンドCSSチュートリアルCSS を使用して写真の回転ドアのダイナミックな効果を実現する方法を見てみましょう。

CSSを使用して、絵の回転灯のダイナミックな効果を実現するにはどうすればよいですか?次の記事では、css3 アニメーション トランスフォームを使用して画像の回転効果を実現する方法を紹介します。

CSS を使用して写真の回転ドアのダイナミックな効果を実現する方法を見てみましょう。

#プロジェクトでは、写真の回転ドア効果を実現する必要があるためです。一般的な Vue コンポーネント ライブラリのほとんどを確認した結果、そのようなコンポーネントはほとんど見られなかったため、CSS3 アニメーションに基づいて回転ドア効果を手動で実装しました。すぐに 2 つの解決策が思い浮かびます。1 つは、タイマー、scrollLeft を使用するか、位置の left 属性値を変更することです。もう 1 つは、CSS3 の変換とアニメーションを使用することです。

アニメーションを使用して実装することを選択します。js で実装されたアニメーションは CPU で動作し、css3 のアニメーションは GPU で動作するため、css3 のレンダリング コストは低くなります。このタイプの操作を実装するには css3 を使用することにしました。

scrollLeft の使用

最初は、scrollLeft オーバーフローを使用して効果を実現し、それをトリガーするためにタイマーを使用していました。これにより、再描画が発生します。そして毎回リフローします。 (追記: パフォーマンスを向上させる必要がある場合は、タイマー トリガーの代わりに requestAnimationFrame を使用できます。主な利点は、requestAnimationFrame が各フレーム内のすべての DOM 操作を集中させ、1 回の再描画またはリフロー、および再描画またはリフローで完了することです。リフロー時間間隔はブラウザの更新頻度にほぼ準拠します。一般に、この頻度は 1 秒あたり 60 フレームです)

(scrollLeft を変更すると、左と同じ効果があります) コア コード:

function toScrollLeft(){
  //  如果容器的宽度大于滚动条距离,则重复滚动
  if(divWidth > box.scrollLeft){
    box.scrollLeft++
    setTimeout('toScrollLeft()', 18);
  }
  else{
    // 滚动结束,从新开始
    box.scrollLeft=0;
    setTimeout('toScrollLeft()', 18);
  }
}

css3 アニメーション変換を使用する

css3 アニメーションを使用して回転ランタンを実装し、CSS 変数を使用して各状態変換のtranslateX オフセットを動的に設定します。最も重要なアニメーションには、次のような効果があります。 Made gif が続きます。

CSS を使用して写真の回転ドアのダイナミックな効果を実現する方法を見てみましょう。

1. HTMLレイアウトの事前設定とdivコンテナの設定

<div class="box" >
    <ul >
        <li v-for="(src,i) in cap " :key="i">
            <img  src="/static/imghwm/default1.png"  data-src="src"  class="lazy"     style="max-width:90%" height="90px" : / alt="CSS を使用して写真の回転ドアのダイナミックな効果を実現する方法を見てみましょう。" >
        </li>
    </ul>
</div>

2. 対応するスタイルの設定

.box{
display: flex;
overflow: hidden;
flex-direction: column;
border-radius:12px;
width: 100%;
height: 100%;
background-color:#fff;
}
ul{
display: flex;
}

3. 最後に、バインディング オブジェクトをスタイルに設定します。.box 要素のスタイルは主に CSS 変数を使用し、特定の値を使用して効果を動的に設定します。アニメーションの各状態。キーコードはアニメーションを使用しています: cap.length*8 は無限に直線的に移動し、無限に繰り返される動きの効果を生み出します。

ps: これは主要な全体的な操作ポイントであり、その他の詳細は省略されています

<div class="box" :style="{
&#39;--card-ul-width-start&#39;:-30+&#39;px&#39;,
&#39;--card-ul-width-middle1&#39;:-cap.length*30+&#39;px&#39;, 
&#39;--card-ul-width-middle2&#39;:-cap.length*60+&#39;px&#39;,
&#39;--card-ul-width-end&#39;:-cap.length*90+&#39;px&#39;
}">
    <ul :style="{&#39;-webkit-animation&#39;:cap.length*8+ &#39;s move infinite linear;&#39;}">
        <li></li>
    </ul>
</div>
data(){
    cap:new Array(6).fill(&#39;https://res.minigame.vip/gc-assets/fruit-master/fruit-master_icon.png&#39;)
}
@keyframes move {
    0%{
    transform:translateX(var(--card-ul-width-start))
    }
    30%{
    transform:translateX(var(--card-ul-width-middle1))
    }
    70%{
    transform:translateX(var(--card-ul-width-middle2))
    }
    100%{
    transform:translateX(var(--card-ul-width-end))
    }    
}

(学習ビデオ共有: css ビデオ チュートリアル )

以上がCSS を使用して写真の回転ドアのダイナミックな効果を実現する方法を見てみましょう。の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明
この記事は掘金社区で複製されています。侵害がある場合は、admin@php.cn までご連絡ください。
cohost.orgの失われたCSSトリックcohost.orgの失われたCSSトリックApr 25, 2025 am 09:51 AM

この投稿では、Blackle Moriは、CohostのHTMLサポートの限界を押し広げようとしている間に見つかったハックのいくつかを示します。あえてこれらを使用してください、あなたもCSS犯罪者とラベル付けされないようにしてください。

カーソルの次のレベルCSSスタイリングカーソルの次のレベルCSSスタイリングApr 23, 2025 am 11:04 AM

CSSを備えたカスタムカーソルは素晴らしいですが、JavaScriptを使用して次のレベルに物事を引き出すことができます。 JavaScriptを使用して、カーソル状態間で移行し、カーソル内に動的テキストを配置し、複雑なアニメーションを適用し、フィルターを適用できます。

Worlds Collide:スタイルクエリを使用したキーフレーム衝突検出Worlds Collide:スタイルクエリを使用したキーフレーム衝突検出Apr 23, 2025 am 10:42 AM

2025年には、互いに互いに跳ね返る要素を伴うインタラクティブなCSSアニメーションは、CSSにPongを実装する必要はありませんが、CSSの柔軟性とパワーの増加はLee&#039;の疑いを補強します。

UI効果にCSSバックドロップフィルターを使用しますUI効果にCSSバックドロップフィルターを使用しますApr 23, 2025 am 10:20 AM

CSSバックドロップフィルタープロパティを使用してユーザーインターフェイスをスタイルするためのヒントとコツ。バックドロップフィルターを複数の要素間でレイヤー化する方法を学び、それらを他のCSSグラフィカル効果と統合して、精巧なデザインを作成します。

微笑んでいますか?微笑んでいますか?Apr 23, 2025 am 09:57 AM

まあ、SVG&#039;の組み込みのアニメーション機能は、計画どおりに非推奨されることはありませんでした。確かに、CSSとJavaScriptは負荷を運ぶことができる以上のものですが、以前のようにSmilが水中で死んでいないことを知っておくのは良いことです

「かわいい」は見る人の目にあります「かわいい」は見る人の目にありますApr 23, 2025 am 09:40 AM

イェーイ、テキストワラップのジャンプを見てみましょう:サファリテクノロジーのプレビューにかなり着陸してください!しかし、それがChromiumブラウザーでの仕組みとは異なることに注意してください。

CSS-Tricks XLIIIを記録しますCSS-Tricks XLIIIを記録しますApr 23, 2025 am 09:35 AM

このCSS-Tricksアップデートは、アルマナック、最近のポッドキャスト出演、新しいCSSカウンターガイド、および貴重なコンテンツを提供するいくつかの新しい著者の追加の大幅な進歩を強調しています。

Tailwind&#039;の@Apply機能は、響きよりも優れていますTailwind&#039;の@Apply機能は、響きよりも優れていますApr 23, 2025 am 09:23 AM

ほとんどの場合、人々はTailwind&#039;の@Apply機能を紹介します。このように展示されたとき、@Applyはまったく有望な音をしません。だからobvio

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

PhpStorm Mac バージョン

PhpStorm Mac バージョン

最新(2018.2.1)のプロフェッショナル向けPHP統合開発ツール

AtomエディタMac版ダウンロード

AtomエディタMac版ダウンロード

最も人気のあるオープンソースエディター

WebStorm Mac版

WebStorm Mac版

便利なJavaScript開発ツール

SecLists

SecLists

SecLists は、セキュリティ テスターの究極の相棒です。これは、セキュリティ評価中に頻繁に使用されるさまざまな種類のリストを 1 か所にまとめたものです。 SecLists は、セキュリティ テスターが必要とする可能性のあるすべてのリストを便利に提供することで、セキュリティ テストをより効率的かつ生産的にするのに役立ちます。リストの種類には、ユーザー名、パスワード、URL、ファジング ペイロード、機密データ パターン、Web シェルなどが含まれます。テスターはこのリポジトリを新しいテスト マシンにプルするだけで、必要なあらゆる種類のリストにアクセスできるようになります。

EditPlus 中国語クラック版

EditPlus 中国語クラック版

サイズが小さく、構文の強調表示、コード プロンプト機能はサポートされていません