変換を使用して純粋な CSS ポップアップ メニューを実装するためのサンプル コード

変換を使用して純粋な CSS ポップアップ メニューを実装するためのサンプル コード

序文

トップメニューを作成する場合、ポップアップのセカンダリメニューを作成する必要があります。 以前のアプローチでは、jQuery を使用してセカンダリメニューの表示と遷移アニメーションを制御していましたが、CSS3 の transform プロパティを使用すると、すべてが非常に簡単になります。

まず効果

調理方法

核心は、transformの地域変位法を使用し、liタグのホバー疑似クラスとアニメーション遅延と組み合わせて、サブメニューの表示を簡単に実現することです。

<ナビ>
  <ul>
    <li>
      <strong>ホーム</strong>
      <div>
        センチ
        <a href="">CRM</a>
      </div>
    </li>
    <li>
      <strong>ライブ</strong>
      <div>
        <a href="">ジャワ</a>
        <a href="">php</a>
      </div>
    </li>
    <li>
      <strong>ピクチャートゥルー</strong>
      <div>
        <a href="">ミリ</a>
        <a href="">dd</a>
      </div>
    </li>
  </ul>
</nav>
 *{
    パディング: 0;
    マージン: 0;
    ボックスのサイズ: 境界線ボックス;
  }
  体{
    幅:100vw;
    高さ:100vh;
    ディスプレイ: フレックス;
    flex-direction: 列;
    コンテンツの配置: flex-start;
    アイテムの位置を中央揃えにします。
  }
  ナビ{
    マージン: 10px;
  }
  ナビゲーション{
    リストスタイルタイプ: なし;
    高さ: 32px;
    ディスプレイ: フレックス;
  }
  nav ul li{
    右マージン: 10px;
  }
  nav ul li strong{
    テキスト変換:大文字;
    背景色: #9b59b6;
    色: 白;
    パディング: 5px 30px;
    行の高さ: 30px;
    カーソル: ポインタ;
  }
  nav ul li strong+div{
    ディスプレイ: フレックス;
    flex-direction: 列;
    背景色: #3498db;
    パディング: 10px;
    変換: translateY(-110%);
    不透明度: 0;
    遷移: .3秒;
    変換の起点: 上;
  }
  nav ul li:hover div{
    変換: translateY(0);
    不透明度: 1;
  }
  nav ul li strong+div a{
    色: 白;
    テキスト装飾: なし;
    テキスト変換:大文字;
    パディング: 5px 0;
  }

これで、Transform を使用して純粋な CSS ポップアップ メニューのサンプル コードを実装するこの記事は終了です。純粋な CSS ポップアップ メニューに関するその他の関連コンテンツについては、123WORDPRESS.COM の以前の記事を検索するか、次の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

<<:  MySQL の 6 つの一般的な制約タイプの詳細な説明

>>:  コンポーネントベースのフロントエンド開発プロセスの詳細な説明

推薦する

Nodejsはgitee実装コードに自動的に同期するドキュメント同期ツールを作成します

本来の意図このツールを作った理由は、コンピューターを使用しているときにいつでも毎日の仕事や生活を記録...

JavaScript で Priority Queue を実装する

目次1. 優先キューの紹介2. 優先キューのカプセル化1. 優先キューの紹介通常のキューに要素が挿入...

CSS の読み込みによってブロックが発生しますか?

おそらく誰もが js の実行によって DOM ツリーの解析とレンダリングがブロックされることを知って...

MySQLでクエリキャッシュを実行する方法と失敗を解決する方法

関数を使用する前にパラメータのプロパティを理解して、関数の使い方をより深く理解する必要があることは誰...

Linux sar コマンドの使用方法とコード例の分析

1. CPU使用率sar -p (一日中表示) sar -u 1 10 (1: 1秒ごと、10: 1...

タグが新しいページを開くかどうかという問題。主要ウェブサイトの開設状況をまとめました

a タグが新しいページを開くかどうか: (1)百度百科事典:ヘッダーが異なる場合は新しいページが開き...

CSSページ下部固定を実現する8つの方法の詳細な説明

ページを書いているときに、ページの内容が小さくてフッターがページの真ん中に留まってしまうといった状況...

Linux に JDK1.8 をインストールするための詳細なチュートリアル

1. 設置前の清掃 rpm -qa | grep jdk rpm -qa | grep gcj yu...

Vueはキャンバスの手書き入力を使用して中国語を認識します

効果画像: 序文:最近、屋外の大画面プロジェクトに取り組んでいました。システムの入力方法は使いにくか...

Vue で親コンポーネントから子コンポーネントにデータを渡すいくつかの方法

最近、Vue のソースコードを勉強していて、Vue で親コンポーネントと子コンポーネント間でデータを...

時刻を保存するために適切な MySQL の datetime 型を選択する方法

データベースを構築してプログラムを書くとき、日付と時刻の使用は避けられません。データベースには、ti...

VueでTypeScriptを使用する方法

導入近年、TypeScript を求める声がますます高まり、TypeScript はフロントエンドに...

MySQLが大量のデータを処理する際にクエリ速度を最適化するいくつかの方法

実際に参加したプロジェクトでは、MySQL テーブルのデータ量が数百万に達すると、通常の SQL ク...

Zabbix 監視ソリューション - 最新の公式バージョン 4.4 [推奨]

ザビックス2019/10/12 チェンシン参照するhttps://www.zabbix.com/do...