CSS3でハートを描く

CSS3でハートを描く

成果を達成する

要件/機能:

CSS + HTML を使用してハートを描く方法。

分析:

正方形と 2 つの円を組み合わせるとハートが形成できます。
まず正方形と円を描き、次のように配置します。

もう一つの円を追加します。

最後に、図形全体を時計回りに 45 度回転させます。

初期実装:

まず正方形を描きます。

<本文>
    <div id="ハート"></div>
</本文>

#心臓{
       高さ: 300px;
       幅: 300ピクセル;
       境界線: 2px 黒一色;
    }

正方形の左側に円を追加します。これを実現するには、疑似クラス before を使用します。

     #心臓{
            高さ: 200px;
            幅: 200ピクセル;
            境界線: 2px 黒一色;
            位置: 相対的;
        }
    #ハート:前{
        コンテンツ: '';
        幅: 200ピクセル;
        高さ: 200px;
        境界線: 2px 黒一色;
        border-radius: 50%; // 角が丸い四角形は円になります。position: absolute;
        left: -100px; // 正方形を半分の長さだけ左にシフトします}

グラフは次のようになります。

別の円を追加します。ここでは、after 疑似クラスを使用してこれを実現します。

    #心臓{
            高さ: 200px;
            幅: 200ピクセル;
            境界線: 2px 黒一色;
            位置: 相対的;
        }
        // ここでは面倒なので、1 つのブロックだけ書きます #heart:before、#heart:after {
        コンテンツ: '';
        幅: 200ピクセル;
        高さ: 200px;
        境界線: 2px 黒一色;
        境界線の半径: 50%;
        位置: 絶対;
        左: -100px;
    }
    // 2 番目の円では、四角形を半分だけ上に移動する必要があります#heart:after{
        左: 0;
        上: -100px;
    }

最後のステップは、回転させて色を追加することです。より明確にするために、追加された境界線を削除します。

   /*ハートを回転させて色を付ける*/
  変換: 回転(45度);
  背景色: 赤;

完全なコード:

<スタイル>
        本文、html{
            ディスプレイ: フレックス;
            アイテムの位置を中央揃えにします。
            コンテンツの中央揃え: 中央;
            高さ:100vh;
        }
        #心臓{
            高さ: 200px;
            幅: 200ピクセル;
            /*境界線: 2px 黒一色;*/
            位置: 相対的;
            変換: 回転(45度);
            背景色: 赤;
        }
        #ハート:前、#ハート:後{
            コンテンツ: '';
            幅: 200ピクセル;
            高さ: 200px;
            /*境界線: 2px 黒一色;*/
            境界線の半径: 50%;
            位置: 絶対;
            左: -100px;
            背景色: 赤;
        }
        #ハート:後{
            左: 0;
            上: -100px;
        }
    </スタイル>
</head>
<本文>
    <div id="ハート"></div>
</本文>

要約:

ハートは、正方形と 2 つの円で作成できます。ここでは、before 疑似クラスと after 疑似クラスを使用し、2 つの疑似クラスをそれぞれシフトします。最後に、色を追加してハート ❤️ を作成します。

以上がCSS3でハートを描く方法の詳しい内容です。CSS3でハートを描く方法の詳細については、123WORDPRESS.COMの他の関連記事に注目してください。

<<:  HTMLは無効なテーブル幅設定の問題を解決します

>>: 

推薦する

1時間で学ぶMySQLの基礎

目次MySQL を使い始めるMySQL 管理6. MySQL サーバーを起動および停止します。 7....

2級コンピュータ試験のMySQL知識ポイント mysql alterコマンド

テーブル構造を編集するための MySQL の alter コマンドの使用。具体的な内容は以下のとおり...

JavaScript フロー制御 (分岐)

目次1. プロセス制御2. シーケンシャルプロセス制御3. 分岐フロー制御if文1. 支店構造2. ...

Vue ソースコード学習でレスポンシブ性を実装する方法

目次序文1. レスポンシブシステムの重要な要素1. データの変更を監視する方法2. 依存関係を収集す...

Centos 7 システムの Tomcat サーバーの詳細な分析

目次1. tomcatの起源1. Tomcat アプリケーションのシナリオ2. Tomcatに必要な...

MySQL のキーとインデックスの違い

まずはコードを見てみましょう: ALTER TABLE reportblockdetail ADD ...

Docker がポート 2375 を公開し、サーバー攻撃を引き起こす問題と解決策

docker リモート API を学習した学生であれば、ポート 2375 についてよくご存知だと思い...

vue+rem カスタムカルーセル効果

vue+remを使用したカスタムカルーセルチャートの実装は参考までに。具体的な内容は以下のとおりです...

srcまたはcss背景画像のurl値はbase64でエンコードされたコードです

ウェブ上の一部の画像の src または CSS 背景画像 URL の後に、data:image/pn...

MySQL でストリーミングクエリを使用してデータ OOM を回避する

目次1. はじめに2. JDBCはストリーミングクエリを実装する3. パフォーマンステスト3.1. ...

IDEA に基づいて Tomcat サーバーを展開するための詳細な手順

目次導入ステップ1ステップ2: アイデアで動的Webプロジェクトを作成するステップ3: Tomcat...

js を使用して画像をモザイク化する方法の例

この記事では、主に js を使用して画像をモザイク化する方法の例を紹介し、次のように共有します。効果...

私の CSS フレームワーク - base.css (ブラウザのデフォルト スタイルをリセット)

コードをコピーコードは次のとおりです。 @文字セット "utf-8"; /* @...

Dockerコンテナの個別展開のためのLNMPの実装

1. 環境整備各コンテナの IP アドレス: nginx: 172.16.10.10マイSQL: 1...

MySQL実行計画の詳細な分析

序文前回の面接では、実行計画について質問されたとき、多くの人がそれが何なのか知りませんでした。実行計...