ホームページ  >  記事  >  ウェブフロントエンド  >  CSS でのグラデーションの賢い使い方

CSS でのグラデーションの賢い使い方

php中世界最好的语言
php中世界最好的语言オリジナル
2018-03-21 16:59:481714ブラウズ

今回はCSSでのグラデーションの賢い使い方について、実際の事例を交えて見ていきましょう。

はじめにこの記事では主に CSS3 の線形グラデーションと放射状グラデーションに関する関連知識を共有し、グラデーションの使用に関する別の角度を紹介します。興味のある方は、詳細な紹介を見てみましょう:


1. 線形グラデーション ここでは、最初に基本的な構文を見てから、次の例を見てください。

    linear-gradient(90deg,red 20%,blue 50%,yellow 80%);

この図を見れば、これらのパラメータの設定の役割が大まかに理解できるでしょう。言葉を使って説明したわけではありませんが。 (なので、定義が理解できないときは、練習する必要があります。)

次に、何かをしなければなりません。色分解点を重ねていきます。

    width: 300px;
    height: 200px;
    background: linear-gradient(90deg,blue 100px,#fff 100px,#fff 200px,red 200px);

はい、これは上記のグラデーション コードによって生成された効果です。これまでのグラデーションの印象を打ち破るように思えますか?


次に、線形グラデーションを使用して、次のようなクールな効果を実現します。


グラデーションについての理解を超えていると感じますか。この背景を実装するアイデアについて話しましょう。これは、その基本的なパターンを見つける必要があります。


使用する必要のある知識ポイント:

    背景は、カンマで区切られた複数の線形グラデーションの宣言をサポートしています。
  • 複数の線形グラデーションを宣言する場合、最初に宣言されたものがユーザーに近くなります。 (ここでは、カバーの問題を考慮する必要があります。通常は透明です)サイズ
  • 背景 - 位置

    の合理的な組み合わせ。
  •     width: 410px;
        height: 410px;
        background: linear-gradient(rgb(2,222,222) 10px, transparent 10px) repeat left top / 40px,
                    linear-gradient(90deg,rgb(2,222,222) 10px, transparent 10px) repeat left top / 40px;
    ほら、以前はこのような効果を得るにはアーティストに画像をカットしてもらうしかありませんでしたが、CSS3の波の今では自給自足できるようになりました(^_^)。
  • そして、グラデーションを使用すると、追加の HTML 要素 を消費することなく、背景色をアニメーション化して、目的の効果を実現できます。例:

        /*
         *  这里用scss写的,对新手不太友好,抱歉(-_-)
         */
        @mixin menuaction($color) {
            background: linear-gradient($color 100%, transparent 100%) no-repeat center bottom / 100% 10%;
            &:hover {
                background-size: 100% 100%;
                color: #fff;
            }
        }
2. 放射状グラデーション


基本的に、放射状グラデーションは、中心点から外側に広がる点を除いて、線形グラデーションと似ています。したがって、ここでは詳細には触れません。

早速、まず同心円を描いてみましょう:


    border-radius: 50%;
    background: radial-gradient(circle,rgb(22,222,111) 0,rgb(22,222,111) 50px,red 50px,red 100px, rgb(222,222,1) 100px, rgb(222,222,1) 150px,rgb(222,2,111) 150px);

何が終わるでしょうか?笑 最近はさまざまなクーポンがあるので、グラデーションの知識を使ってクーポンを作成しましょう:


コア コードは次のとおりです:

    width: 300px;
    height: 120px;
    background: radial-gradient(transparent 0, transparent 5px, rgb(247,245,201) 5px) no-repeat,
                radial-gradient(transparent 0, transparent 5px, rgb(247,245,201) 5px) no-repeat,
                radial-gradient(transparent 0, transparent 5px, rgb(247,245,201) 5px) no-repeat,
                radial-gradient(transparent 0, transparent 5px, rgb(247,245,201) 5px) no-repeat,
                radial-gradient(transparent 0, transparent 5px, rgb(247,245,201) 5px) no-repeat,
                radial-gradient(transparent 0, transparent 5px, rgb(247,245,201) 5px) no-repeat,
                radial-gradient(#fff 0, #fff 10px, rgb(247,245,201) 10px) no-repeat,
                radial-gradient(#fff 0, #fff 10px, rgb(247,245,201) 10px) no-repeat,
                linear-gradient(90deg,transparent 10px, rgb(247,245,201) 10px);
            background-size: 20px 20px,20px 20px,20px 20px,20px 20px,20px 20px,20px 20px,60px 60px,60px 60px,100% 100%;
            background-position: -10px 0,-10px 20px,-10px 40px,-10px 60px,-10px 80px,-10px 100px,60px -30px,60px 90px,left center;
この記事の事例を読んだ後は、この方法を習得したと思います。さらに興味深い情報については、PHP 中国語 Web サイトの他の関連記事に注目してください。

推奨読書:

あなたの知らない不人気な CSS プロパティ

href と src、link と @import の違いは何ですか

以上がCSS でのグラデーションの賢い使い方の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。