CSS での三角形の描画と巧妙な応用例の詳細な説明

CSS での三角形の描画と巧妙な応用例の詳細な説明

Web ページ上の一般的な三角形の一部は、画像やフォント アイコンにする必要なく、CSS を使用して直接描画できます。 Xiaomiの公式ウェブサイトに記載されている通り:

ここに画像の説明を挿入

JDのウェブサイトから:

ここに画像の説明を挿入

では、これらの三角形は CSS を通じてどのように実装されるのでしょうか?

三角形の実装

これを実現するには、div コンテナの幅と高さを 0 に設定し、コンテナの境界線を設定します。

。箱 {
            高さ: 0;
            幅: 0;
            境界線の色: 小麦色 スカイブルー ピンク rgb(154, 121, 230);
            境界線のスタイル: solid;
            境界線の幅: 40px;
        }

上記のコードにより、次の効果が得られます。

ここに画像の説明を挿入

上記のコードでは、ボックスの幅と高さは 0 に、境界線の色の値はそれぞれ上、右、下、左、境界線は実線、4 つの境界線の幅は 40px に設定されているため、4 つの二等辺直角三角形が生成されます。三角形のサイズは境界線の幅によって決まります。border-width の値が大きいほど、三角形も大きくなります。

三角形の 1 つだけが必要な場合は、他の境界線の色を透明に設定することで実現できます。以下の効果を実現します。

ここに画像の説明を挿入

これを実現するには、border-top、border-bottom、border-left の色の値を transparent に設定します。

。箱 {
            高さ: 0;
            幅: 0;
            border-color: 透明 スカイブルー 透明 透明;
            境界線のスタイル: solid;
            境界線の幅: 40px;
        }

二等辺三角形が必要ない場合はどうすればよいでしょうか? それを実現するにはどうすればよいでしょうか?
前述の通り、三角形の大きさは border-width の値によって決まります。4方向の値を同じ値に設定しているので、結果は二等辺三角形になります。 border-width の値を変更することで、さまざまなサイズの直角三角形を作成できます。

。箱 {
            高さ: 0;
            幅: 0;
            border-color: 透明 スカイブルー 透明 透明;
            境界線のスタイル: solid;
            境界線の幅: 80px 40px 0 0;
        }

すると次の三角形が得られます。

ここに画像の説明を挿入

小さな三角形の応用

三角形を描くだけでなく、位置の位置決めによっても実現できます。冒頭で述べたJD.comのウェブサイトでの価格表示の効果など。

ここに画像の説明を挿入

このレンダリングの台形は、以下に示すように長方形の右側に直角三角形を配置し、三角形の背景色を白に設定することで実現できます。

ここに画像の説明を挿入

もちろん、小さな三角形では疑似要素を使用して Web ページの構造を簡素化できますが、疑似要素はインライン要素であるため、最初にインライン ブロック要素またはブロックレベル要素に変換する必要があります。

要約する

CSS で三角形を描画する場合は、次の点に注意する必要があります。

  • コンテナの幅と高さは0である必要があります
  • 三角形のサイズは border-width の値によって決まります。

CSS で三角形を描画して巧みに適用する方法についての記事はこれで終わりです。CSS 三角形描画に関するより関連性の高いコンテンツについては、123WORDPRESS.COM で以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

<<:  MySqlエスケープの詳細な使用例

>>:  HTMLテーブルレイアウトの実践的な使い方の詳しい説明

推薦する

テキストの円形スクロールアニメーションを実装するミニプログラム

この記事では、参考までに、テキストループスクロールを実現するアプレットの具体的なコードを例を挙げて紹...

CentOS 6 は Docker を使用して Zookeeper 操作例を展開します

この記事では、Docker を使用して Centos6 に Zookeeper をデプロイする方法に...

Angular Cookie の読み取りおよび書き込み操作コード

Angular Cookie の読み取りおよび書き込み操作のコードは次のようになります。 var a...

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

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

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

この記事では、MySQL 8.0.20 winx64 のインストールと設定方法を次のように説明します...

デザインのヒント: きっと気に入っていただけると思います

<br />このタイトルを見ると、見覚えがあるかもしれません。多くのウェブサイトが同様の...

MySQLカスタム変数の概念と特徴

MySQL カスタム値は、値を保存するための一時的なコンテナです。サーバーへの接続がアクティブである...

JavaScriptエラーキャプチャの詳細な説明

目次1. 基本的な使い方とロジック2. 特徴3. エラーオブジェクト4. キャッチアンドスロー戦略の...

IDEA は Docker プラグインを使用します (初心者向けチュートリアル)

目次例示する1. Dockerリモートアクセスを有効にする2. Dockerに接続する3. イメージ...

JavaScript データ型変換の例 (他の型を文字列、数値型、ブール型に変換する)

序文データ型変換とは何ですか?フォームまたはプロンプトを使用して取得されるデフォルトのデータ型は文字...

CSS マージンの重複と解決策の探索の詳細な説明

最近、CSS 関連の知識ポイントをいくつか見直し、CSS における典型的なマージンの重なりの問題を整...

JavaScript 履歴オブジェクトの説明

目次1. ルートナビゲーション2. 履歴状態管理API (1)ハッシュチェンジイベント(2)ポップス...

フレックスレイアウトとposition:absolute/fixedの競合の詳細な説明

以前、プロジェクトを開発しているときに、flex レイアウトと position:absolute/...

Docker で Node プロジェクトをビルドしてデプロイする方法

目次DockerとはクライアントサイドDocker基本的なDocker操作画像名画像をプルするその他...