タブ切り替えを実装するための HTML サンプル コード

タブ切り替えを実装するための HTML サンプル コード

タブ切り替えもプロジェクトではよく使われる技術です。一般的にタブ切り替えはjsやjqを使って実装されます。今日はCSSだけでタブ切り替えを実装する2つの方法を紹介します。

方法1:

原則: 対応するdivは、ラベルタグの関連属性と入力の単一選択タイプを通じて表示されます。

1. wrapというクラス名のdivをコンテナとして作成する

2. タブ切り替え項目として機能するラベルタグを4つ作成します。

3. 各ラベルに span タグ (ナビゲーション コンテンツ) と input タグ (選択と選択解除用) を作成します。タイプはラジオです。また、ナビゲーション項目がクリックされたときのコンテンツ ボックスとして div を作成します。

入力タグの名前は同じでなければならないことに注意してください。私はタブと名付けました

最終的な HTML は次のようになります。

<div class="wrap">
    <ラベル>
        <span>ホーム</span>
        <input type="radio" name="tab" チェック済み>
        <div>ホームページ</div>
    </ラベル>
    <ラベル>
        <span>リスト</span>
        <input type="radio" name="tab">
        <div>リストページ</div>
    </ラベル>
    <ラベル>
        <span>ニュース</span>
        <input type="radio" name="tab">
        <div>ニュースページ</div>
    </ラベル>
    <ラベル>
        <span>私の</span>
        <input type="radio" name="tab">
        <div>鉱山ページ</div>
    </ラベル>
</div>

重要なCSSは、入力の幅を0に設定して、入力上の小さな点が現実的にならないようにし、ナビゲーション項目のクリックを使用して、ラベルの関連付けを通じてチェックされた入力を実現し、input:checked+div{display:block}を通じて対応するdivの表示を実現することです。

<スタイル タイプ="text/css">
        *{マージン: 0;パディング: 0;}
        。包む{
            マージン: 20px 自動;
            幅: 403px;
            高さ: 600px;
            border:1px 茶色一色;
            位置: 相対的;
        }
        ラベル{
            幅: 100ピクセル;
            高さ: 30px;
            フロート: 左;
            テキスト配置: 中央;
            行の高さ:30px;
            border-right: 1px 茶色一色;
            border-bottom: 1px 茶色一色;
        }
        ラベル:n番目の型(4){
            右境界線: なし;
        }
        ラベルスパン{
            カーソル: ポインタ;
        }
        ラベル div{
            幅: 403px;
            高さ: 568px;
            位置: 絶対;
            左: 0;
            上: 31px;
            背景: #eeeeee;
            表示: なし;
        }
        ラベル入力{
            幅: 0;
        }
        入力:チェック済み+div{
            表示: ブロック;
        }
    </スタイル>

方法2:

原則:切り替えはaタグのアンカーポイントを通じて実現されます。つまり、aのhrefパスはdiv idを切り替えることです。

1. wrapというクラス名のdivをコンテナとして作成する

2. クラス名が nav の div を作成し、その中に 4 つの a タグを作成します。a タグの href は、切り替え先の div の ID です。

3. 切り替えdivを配置するために、navの兄弟であるクラス名shのコンテナを作成します。

4. コンテンツを表示するためのdivを作成します。IDは上記のaタグに対応します。

最終的なコードは次のようになります。

<div class="wrap">
    <div class="nav">
        <a href="#home">ホーム</a>
        <a href="#list">リスト</a>
        <a href="#news">ニュース</a>
        <a href="#mine">私のもの</a>
    </div>
    <div class="sh">
        <div id="home">ホームページ</div>
        <div id="list">リストページ</div>
        <div id="news">ニュースページ</div>
        <div id="mine">鉱山ページ</div>
    </div>
</div>

CSSスタイル設定、つまり、クラス名shのdivをdisplay:noneに設定し、div:target{display:block}を使用して選択した項目を表示します。

<スタイル タイプ="text/css">
        *{マージン: 0;パディング: 0}
        。包む{
            幅: 400ピクセル;
            高さ: 600px;
            境界線: 1px の茶色
            マージン: 20px 自動;
            位置: 相対的;
        }
        .nav{
            幅: 100%;
            高さ: 30px;
        }
        .nav{
            幅: 99px;
            高さ: 30px;
            テキスト配置: 中央;
            行の高さ: 30px;
            border-right: 1px 茶色一色;
            border-bottom: 1px 茶色一色;
            フロート: 左;
            テキスト装飾: なし;
            色:黒;
        }
        .sh{
            幅: 400ピクセル;
            高さ: 569px;
            位置: 絶対;
            左: 0;
            上:31ピクセル;
            背景: #eeeeee;
        }
        .sh div{
            表示: なし;
            テキスト配置: 中央;
        }
        .sh div:ターゲット{
            表示: ブロック;
        }
    </スタイル>

html でタブ切り替えを実装するサンプルコードに関するこの記事はこれで終わりです。より関連性の高い html タブ切り替えコンテンツについては、123WORDPRESS.COM の過去の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

<<:  モバイル端末の適応に関する簡単な説明

>>:  CentOS7 ファイアウォールとポート関連コマンドの紹介

推薦する

Windows ホストと Docker コンテナに共有フォルダを設定してマウントする手順

Docker コンテナ内のプログラムは、ホスト ディレクトリ内のデータにアクセスして呼び出す必要があ...

MySQL パフォーマンス最適化インデックス プッシュダウン

インデックス条件プッシュダウン (ICP) は MySQL 5.6 で導入され、クエリを最適化するた...

Vue は Websocket カスタマー サービス チャット機能を実装します

この記事では主に基本的なチャットの実装方法を紹介します。今後は絵文字や写真のアップロードなどの機能も...

Linuxファイルの基本属性の知識ポイントのまとめ

Linux システムは典型的なマルチユーザー システムです。異なるユーザーは異なる立場にあり、異なる...

Docker が MySQL を作成する説明

1. MySQLイメージをダウンロードするコマンド: docker pull mysql 2. コン...

Linux パーティションまたは論理ボリュームにファイルシステムを作成する方法

序文システムにファイル システムを作成し、それを永続的または非永続的にマウントする方法を学習します。...

パーティクルダイナミックボタン効果を実現するCSS

オリジナルリンクhttps://github.com/XboxYan/no…ボタンは、おそらく We...

要素のフォームコンポーネントに関する注意事項

要素フォームとコード表示詳細はエレメントフォーム公式サイトをご覧ください構造と機能の分析紹介とソース...

VMware Workstation 14 Pro(仮想マシン)にシステムをインストールする方法の詳細な説明

この記事では、VMware Workstation 14 Pro (仮想マシン) にシステムをインス...

Nginx がリクエストを処理する際のマッチングルールの詳細な分析

nginx はリクエストを受信すると、まず server_name でサーバーを照合し、次にサーバー...

JavaScript Three.js でテキストを作成する最初の経験

目次効果テキストの作成を開始するまずフォントローダーを作成するフォントライブラリを読み込むテキストジ...

フォント名に従ってフォントを呼び出すと、ブラウザに必要なフォントが表示されます。

質問 1: ブラウザに必要なフォントを表示するように指示するにはどうすればよいでしょうか? フォント...

Ubuntu 18.04にmysql5.7をインストールする

Ubuntu 18.04では参考までにmysql 5.7をインストールします。具体的な内容は以下のと...