タブ切り替えもプロジェクトではよく使われる技術です。一般的にタブ切り替えは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 ファイアウォールとポート関連コマンドの紹介
目次概要環境の準備プロジェクトのパフォーマンスに影響を与える要因遅延読み込みとは何ですか?プロジェク...
主な違い: 1. タイプSQL データベースは主にリレーショナル データベース (RDBMS) とし...
1. 背景1.1 問題点最近の製品テスト レポートでは、PKI ベースの認証方法の使用が推奨されて...
以前にインストールしたmariadbを削除する1. rpm -qa | grep mariadb を...
目次1. ルートパスワードを忘れてしまい、データベースにアクセスできない: DBA にとって、スーパ...
多くの場合、大規模および中規模の Web サイトでは、静的リソース (フォント ファイル、画像など)...
コードをコピーコードは次のとおりです。 <iframe id="myFrameId&...
以前、カスタム関数を使用して MySQL でツリー構造を再帰的にクエリする方法についての記事を書きま...
目次序文解決:ステップ1ステップ2序文環境: VMware Workstation 上に Linux...
<br />「良いデザインとは何か」と答える 1 万人に対して、少なくとも 1 万 1 ...
編集者:この記事では、インタラクティブデザインがブランドコミュニケーションチェーン全体で果たすべき役...
目次序文変換関係具体的な実装file2DataUrl(ファイル、コールバック) file2Image...
Grafana をインストールします。公式 Web サイトでは、直接インストールできる Ubuntu...
HTML にビデオを挿入するために最もよく使用される方法は 2 つあります。1 つは古い <o...
目次1. 双方向データバインディングとは1. データの双方向バインディングを実装する必要があるのはな...