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は無効なテーブル幅設定の問題を解決します

>>: 

推薦する

sed コマンドを使用して文字列を置換する Linux チュートリアル

文字列を置き換えるには、次の形式を使用する必要があります。 $ sed s/置換対象文字列/置換文字...

MySQLデータベースにパスワードを入力した後にフラッシュバックする問題の解決策

パスワード入力後にMySQLデータベースがクラッシュする問題と解決策1 ケースの説明最近、基本的な機...

Linux での tcpdump コマンド例の詳細な説明

序文簡単に言えば、tcpdump は、ネットワーク上のトラフィックをダンプし、ユーザーの定義に従って...

Dockerを使用してLaravelおよびVueプロジェクトの開発環境を構築する詳細な説明

この記事では、Docker で構築された Laravel および Vue プロジェクトの開発環境を紹...

CSS で background-color を使用して背景画像にマスク効果を追加する 2 つの方法

div で background-color と background-image を同時に設定する...

VMware で VMware ツールをインストールしてもインストール ファイルが表示されない問題を解決する方法

VMware ツールは VMware の使用に非常に便利です。そのため、VMware ツールをインス...

MySQL 8.0.18 ハッシュ結合は左/右結合をサポートしていません 左と右の結合の問題

MySQL 8.0.18 では、インデックスが作成されていないフィールドに適用でき、等価値の関連付け...

Easyswoole ワンクリック インストール スクリプトとパゴダ インストール エラー

よくある質問easyswoole を初めて使用する場合は、次のような問題に遭遇することがよくあります...

BootStrap グリッド間に隙間を残す解決策

目次[例を見る]: 【本来の効果は以下の通り】理由は次のとおりです。 【解決】:要約するBootSt...

Nofollowタグの書き方と使い方

「nofollow」タグは数年前に Google、Yahoo、Microsoft によって提案されま...

コンテンツ領域の周囲を回転する CSS 動的グラデーション ボーダーの効果 (サンプル コード)

レンダリング ネットで関連情報を調べたところ、現在のダイナミックグラデーションボーダーの実装方法のほ...

Centos7でmysql6の初期化インストールパスワードをインストールする方法

1. まずデータベースサーバーを停止しますサービスmysqld停止2.vim /etc/my.cnf...

MongoDBのパフォーマンスを向上させる方法

MongoDB は高性能なデータベースですが、使用していくうちにパフォーマンスの問題が発生することが...

Docker の 4 つのネットワーク タイプの主な例

4 つのネットワーク タイプ:なし: コンテナのネットワーク機能を一切設定しません。--net=no...

react-beautiful-dnd を使用してリスト間のドラッグ アンド ドロップを実装する

目次react-beautiful-dndを選ぶ理由基本的な使い方基本概念使い方使用中に発生した問題...