ホームページ >ウェブフロントエンド >htmlチュートリアル >CSS3 ターゲットの擬似クラスはこれらのことを言わなければなりません (純粋な CSS はタブ切り替えを実現します)_html/css_WEB-ITnose
target に見覚えがあると思いますか?!
今日お話したいことは ではありません HTML の 3499910bf9dac5ae3c52d5ede7383485 タグに target 属性があります。
対象の擬似クラスはCSS3の新しい属性です。
CSS 属性に詳しい人なら、疑似クラスと言えば、hover、:link、:visited、:focus などを知っているはずです。target の使用法はそれらと同じです。
正式な定義は次のとおりです:
URL の後にアンカー名が続き、 # ドキュメント内の特定の要素を指します。リンクされた要素がターゲット要素です。
:target selector は、現在アクティブなターゲット要素を選択するために使用できます。
この定義を初めて見た場合は、少し混乱していますか? !関係ありません~ プログラマはコードを使って通信します。栗をください。
<!DOCTYPE html><html><head><style>:target{border: 2px solid blue;background-color: yellow;}</style></head><body><p><a href="#news1">跳转至内容 1</a></p><p><a href="#news2">跳转至内容 2</a></p><p id="news1"><b>内容 1...</b></p><p id="news2"><b>内容 2...</b></p></body></html>
コードを読んで何も感じませんか?~それでは、レンダリングを見てみましょう。
初期化は次のようになります:
[Jump to content 1] をクリックすると、次のようになります:
他の擬似タイプとはターゲットが違うと思いますか?!
はは〜、早速本題に入りましょう! ! !
target の特性を利用して、純粋な CSS タブ効果の切り替えを実現できます。
target の特性を利用して、純粋な CSS タブ効果の切り替えを実現できます。
target の特性を利用して、純粋な CSS タブ効果の切り替えを実現できます。
(重要なことは3回言ってください!)
コードは次のとおりです:
<!DOCTYPE html><html><head><meta charset="UTF-8"><style>.tabmenu { position:absolute; top:100%; margin:0;}.tabmenu li{ display:inline-block;}.tabmenu li a { display:block; padding:5px 10px; margin:0 10px 0 0; border:1px solid #91a7b4; border-radius:0 0 5px 5px; background:#e3f1f8; color:#333; text-decoration:none;}.tablist { position:relative ;margin:50px auto; min-height:200px;}.tab_content { position: absolute; width:600px; height:170px; padding:15px; border:1px solid #91a7b4; border-radius:3px; box-shadow:0 2px 3px rgba(0,0,0,0.1); font-size:1.2em; line-height:1.5em; color:#666; background:#fff; }#tab1:target, #tab2:target, #tab3:target { z-index: 1;} </style></head><body><div class="tablist"> <ul class="tabmenu"> <li><a href="#tab1">tab1</a></li> <li><a href="#tab2">tab2</a></li> <li><a href="#tab3">tab3</a></li> </ul> <div id="tab1" class="tab_content">tab1</div> <div id="tab2" class="tab_content">tab2tab2</div> <div id="tab3" class="tab_content">tab3tab3tab3</div></div></body></html>
レンダリングは次のとおりです。
最も重要なコード:
まず、ターゲットの特性に従って対応する div にアンカーリンクし、次にそれに応じて div の階層関係を変更します。にz-index 属性を使用してタブ切り替えを実現します。
(もちろん、まずは z-index 属性の特性を理解する必要があります。)
最後に、互換性に関するセクシュアリティの問題について触れておきます。これは CSS3 の新機能であるため、IE678 などの古いバージョンのブラウザとは互換性がありません。 。 。