CSS を使用してサブ要素に応じて異なるスタイルを記述する方法

CSS を使用してサブ要素に応じて異なるスタイルを記述する方法

達成すべき効果:

必要なもの

1枚、2枚、3枚とスタイルが異なります。子要素の判定はjsで完結できますが、ここではcssで完結します

コア知識ポイント

CSSセレクタを使用して子要素を決定する

例:

CSSセレクタを使用して1つの要素のみに一致させる

div {
    &:最後の子:n番目の子(1) {
      // 関連スタイル}
}

理解するのは簡単です。div の下の最後の要素は最初の要素でもあるので、子要素は 1 つだけではないでしょうか。

CSSセレクタを使用して2つの子要素のみを一致させる

div{
    &:n番目の最後の子(2):n番目の子(2) {
    
    }
}

同じパターンに従います: 最後の 2 番目の要素も 2 番目の要素です。つまり、この div の下には要素が 2 つしかないということではないでしょうか。

完成したスタイル

HTML部分

     <div class="box" v-for="(item,index) リスト内" :key="index">
          <div class="header">
            <img :src="item.userImage" alt="">
            <span>{{アイテム名}}</span>
          </div>
          <div class="content">
            <img :src="v" alt="" v-for="(v, i) in item.imageUrl" :key="i">
          </div>
          <div class="bottom">
            <span class="left-icon">{{item.createTime}}</span>
            <div class="right">
              <img src="./img/6.1.png" alt="">
              <span>{{item.fabulousNumber}}</span>
            </div>
          </div>
        </div>

CSS部分

。箱 {
      パディング: 0.26rem;

      .ヘッダー{
        ディスプレイ: フレックス;
        アイテムの位置を中央揃えにします。

        画像 {
          幅: 0.58rem;
          高さ: 0.58rem;
          右マージン: 0.17rem;
        }
      }

      。底 {
        ディスプレイ: フレックス;
        コンテンツの両端揃え: スペースの間;
        アイテムの位置を中央揃えにします。
        色: #999999;
        フォントサイズ: 0.17rem;

        画像 {
          幅: 0.17rem;
          高さ: 0.17rem;
        }
      }

      。コンテンツ {
        ディスプレイ: フレックス;
        マージン: 0.17rem 0;

        画像 {
          フレックス: 1;
          高さ:1.37rem;
          幅: 0;
          右マージン: 0.09rem;
          &:最後の子 {
            右マージン: 0;
          }
          &:最後の子:n番目の子(1) {
            高さ:2.75rem;
          }
        }
      }
    }

以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

<<:  MySQLのタイムゾーンを表示および設定する方法

>>:  HTML減量 HTMLタグを合理化してWebページを作成する

推薦する

Nginx ポート競合を解決するトラブルシューティング方法の例

問題の説明データ転送に Nginx を使用し、フロントエンドとバックエンドが分離された Spring...

メタタグコードを使用して、360 デュアルコアブラウザを互換モードではなく高速モードにデフォルト設定します。

あるウェブサイトでは、ユーザーが WebKit カーネルでページを開くことを期待して、HTML5 と...

MySQL <> および <=> 演算子の紹介

<> 演算子機能: 等しくないことを示します。注: 「!=」演算子と同じ機能を持ちますが...

JavaScript スクリプトが実行されるタイミングの詳細な説明

JavaScript スクリプトは HTML 内のどこにでも埋め込むことができますが、いつ呼び出され...

MYSQL 左結合の最適化 (10 秒から 20 ミリ秒)

目次【機能背景】 [生のSQL] 【独自SQL解析】 【分析手順】 [最適化されたSQL] 【最適化...

MySQL の「特殊キーが長すぎます」の解決策

目次解決策1解決策2テーブルを作成するときに、興味深い問題に遭遇しました。「指定されたキーが長すぎま...

MySQL 5.7.17 のインストールと設定方法のグラフィックチュートリアル

この記事では、MySQL 5.7.17のインストールと設定方法を参考までに紹介します。具体的な内容は...

div を下から上にスライドさせる CSS3 の例

1. まず、CSS3 のターゲット セレクターを使用し、a タグを使用して id セレクターを指定し...

DockerでGit環境を構築して構成するプロセス

DockerでGit環境を構成する仕事上、Docker 環境で GitLab リポジトリを操作する必...

MySQL初心者はグループ化や集計クエリの煩わしさから解放されます

目次1. グループクエリの概略図2. groupbyキーワード構文の詳細な説明3. 簡単なグループク...

NGINXがウェブサイトのPV、UV、独立IPをカウントする方法の詳細な説明

Nginx: PV、UV、独立IPウェブサイトを作成する人なら誰でも、ウェブサイトのPV、UV、その...

Vue3 がコンポーネント通信に mitt を使用する手順

目次1. インストール2. プロジェクトにインポートしてマウントする3. 使用Vue2.x はコンポ...

チェックボックスの選択またはキャンセルを実装するJavaScript

この記事では、すべてのチェックボックスを選択または解除するためのJavaScriptの具体的なコード...

Alibaba Cloud Server Tomcatにアクセスできません

目次1. はじめに2. 解決策2.1 ファイアウォールを設定してポートを開く2.3 ポートを確認し、...

Linux の sudo 脆弱性により不正な特権アクセスが発生する可能性がある

Linux で新たに発見された sudo の脆弱性を悪用すると、特定のユーザーが root としてコ...