検索
ホームページウェブフロントエンドCSSチュートリアルCSS バックグラウンドの強力な使用法を例を通して学びます (収集価値あり)

CSS バックグラウンドの強力な使用法を例を通して学びます (収集価値あり)

この記事では、CSS で backgroundmix-blend-modemask を使用するいくつかの方法を紹介します。もう少し複雑でクールな背景を作成するためのいくつかの関連プロパティ。

この記事では、CSS 背景のより強力な使用法について学び、背景関連のプロパティを使用してさまざまな方法でより複雑な背景パターンを作成する方法を学びます。このプロセスでは、さまざまなグラデーションテクニックをよりよく習得し、さまざまなグラデーションについてより深く理解できるようになります。

同時に、強力な CSS-Doodle の助けを借りて、一連のルールを使用して多数の異なるランダム パターンをすばやく作成し、CSS の力を感じて、 CSSの美しさ。

背景の基本

CSS の background が非常に強力であることは誰もが知っています。

まずは基本をおさらいしましょう 日常生活でよく使うのは以下の4種類です

  • 単色の背景背景: #000

  • 線形グラデーション背景: 線形グラデーション(#fff, #000) :

  • 放射状グラデーション背景: 放射状グラデーション(#fff, #000) :

  • コーナー グラデーションbackground: conic-gradient(#fff, #000) :

#背景の詳細​​

# ##確かに。基本的なグラデーションをマスターしたので、より複雑な背景パターンに進むことができます。私がグラデーションを使用してさまざまな背景パターンを実現することについて初めて知ったのは、「CSS Secret」という本でした。その後、絶え間ない探求と実験が行われ、いくつかの経験が要約されました。

グラデーションを使用してより複雑な背景を作成する前に、いくつかの重要なヒントを紹介します:

    グラデーションは単なる単一の
  • linear-gradient または単一のグラデーションではありません。 radial-gradientbackground では、複数のグラデーションのオーバーレイをサポートしています。これは非常に重要です。
  • 柔軟な使用
  • repeat-linear-gradeintrepeat-radial-gradeint)、多くのコードを削減できます
  • transparent透明性はどこにでもあります
  • Try
  • mix-ブレンドモードマスク、複雑なパターン作成の魂
  • ランダム変数を使用すると、アイデアを無数の美しいパターンに変えることができます
次へ、組み合わせの旅を始めます。

mix-blend-mode を使用します

mix-blend-mode、混合モード。 Photoshop で最もよく見られるこの機能は、PS の最も強力な機能の 1 つです。 CSS では、ブレンド モードを使用して複数のレイヤーをブレンドし、新しい効果を得ることができます。

混合モードの基本的な使用法については、私の記事を参照してください:

  • 信じられないほどのカラー混合モード mix-blend-mode
  • 信じられないほどのブレンド モード、background-blend-mode
次に、最初のパターンを試して簡単に体験してみましょう

mix-blend- モードの役割## #。

repeat-linear-gradient

を使用して線形グラデーションを繰り返し、反対の角度を持つ 2 つの背景ストライプを作成します。通常は、ブレンド モードを使用せずに、2 つのパターンを重ねて、何が起こるかを確認します。

さて、何が起こるかわかりません。当然のことながら、パターンは透明ではないので、重ね合わせた後は、重ね合わせにより片方の絵しか見えなくなります。

OK、これに基づいて、

mix-blend-mode:multiply

toplayer パターンに追加します。実行してください。もう一度見て、今回はどうなるか見てみましょう。

ブレンディング モードを追加すると、2 つの背景画像が特定のアルゴリズムによって重ね合わされ、非常に美しいパターン効果が示されていることがわかります。これはまさに私たちが行った効果です。欲しい。

CodePen デモ - 繰り返し線形グラデーション背景とミックスブレンドモード

別の mix-blend-mode

では、なぜ mix-blend-mode:multiply が上記で使用されているのでしょうか?他のブレンドモードを使用することはできますか? ######もちろん。これは単なる例ですが、

mix-blend-mode:multiply

は PS の multiply を意味し、レイヤー ブレンド モードの暗化モード グループの 1 つに属します。 上記のデモを使用し、さまざまな効果を得るために他のブレンド モードを試します。

#異なるブレンド モードを重ね合わせると、非常に異なる効果が得られることがわかります。もちろん、さまざまなブレンド モードを使用することで、さまざまな効果を持つパターンを作成できます。

CodePen デモ - 繰り返し線形グラデーションの背景とミックスブレンドモード

CSS-Doodle を使用してパターンをランダムに生成する

これで終わりです。 CSS を記述するためのアーティファクト -

CSS-Doodle を導入する必要があります。CSS-doodle については他の多くの記事で何度も言及しました。簡単に言うと、これは Web コンポーネント ベースのライブラリです。 。これにより、CSS グリッド レイアウトに基づいてページをすばやく作成でき、さまざまな便利な命令や関数 (ランダム、ループなど) が提供され、一連のルールを通じてさまざまな CSS 効果を得ることができます。 上記のデモを例として、

repeat-linear-gradient

によって生成された繰り返しストライプの背景の色、太さ、角度をランダム化し、ブレンド モードをランダムに選択します。次に、CSS-Doodle を使用して、このルールに基づいてさまざまなパターンをすばやくランダムに作成します。

クリックして試してみると、さまざまな効果をランダムに生成できます。マウスのクリック:

CodePen デモ -- CSS Doodle - CSS MIX-BLEND-MODE 背景

放射状グラデーションを使ってみる

もちろん、上記は

Linear gradient

ですが、同様に radial gradient を使用して同じルーチンを適用することもできます。 放射状グラデーションを使用して、複数の放射状グラデーションを生成できます。次のように:

画像に

background-size

を適用すると、次のようになります:

上記と同様に、このグラフィックを少し変形してから 2 つのレイヤーを重ね、一番上のグラフィックに CSS スタイルを追加します。

mix-blend-mode: darken

:

CodePen デモ -- 放射状グラデーション & ミックス ブレンド モード デモ

CSS-Doodle を使用してパターンをランダムに生成する

繰り返しますが、ここでも使用します。 CSS-Doodle を作成し、上記のルールを放射状グラデーションに適用すると、一連の興味深い背景画像を取得することもできます。

クリックして試すことができ、マウスをクリックするとさまざまな効果をランダムに生成できます:

CodePen デモ -- CSS Doodle - CSS MIX- BLEND-MODE 背景 2

もちろん、上記のオーバーレイは非常に単純なパターン オーバーレイですが、この原理をマスターした後は、より複雑な融合を自分で試してみることができます。

上記のオーバーレイ エフェクトは、大きな単色のオーバーレイに基づいています。もちろん、

mix-blend-mode

は実際のグラデーションと衝突して、より多くの火花を作成することもできます。 さまざまなグラデーション背景でブレンド モードを使用します

さまざまなグラデーション背景でブレンド モードを使用しますか?それはどんな素晴らしい効果をもたらすでしょうか?

適切に使用すると、次のようになります。

えーっと、上の縞模様とはまったく異なるスタイルです。

gradienta.io

にアクセスしてご覧ください。これは、CSS を使用して作成されたグラデーション オーバーレイ背景パターンのライブラリです。 描画モードを使用してさまざまなグラデーション パターンをオーバーレイする

次に、描画モードを実装してみましょう。

まず、以下に示すように、線形グラデーションまたは放射状グラデーションを使用して、いくつかのグラデーション パターンを自由に作成します。

次に、描画モードを使用して、2 番目のレイヤーから 2 つずつ重ねていきます。合計 5 つの描画モードを設定する必要があります。ここでは、overlay # を使用しました。 ##、乗算差分差分オーバーレイ。重ね合わせたエフェクトを見てください。非常に素晴らしいです:

CodePen デモ -- Graideint 背景ミックス

上記のアニメーション GIF のおかげで圧縮率が非常に高いため、ギザギザが目立ち、画像がぼやけていますが、上のリンクをクリックしてご覧ください。

次に、重ね合わせた画像に別の

filter: hue-rotate() を追加して画像を動かし、少しズームインして効果、豪華な光と影の効果を確認します。

CodePen デモ -- Graideint 背景ミックス 2

CSS-Doodle を使用してパターンをランダムに生成する

こんにちは。そうですね、ここで引き続き CSS-Doodle を削除できます。

ランダムなグラデーション、ランダムなブレンドモードを重ね合わせて、クールにいきましょう。

CSS-Doodle を使用して、さまざまなグラデーションをランダムに作成し、さまざまなブレンド モードをランダムに使用し、それらをオーバーラップさせて 、その効果を確認します。

もちろん、これは完全にランダムに生成されるエフェクトであるため、生成されるエフェクトがあまり見栄えがよくなかったり、単なる単色だったりする場合があります。しかし、それらのほとんどは非常に優れています

CodePen デモ -- CSS Doodle Mix Gradient


粘り強くご覧いただきありがとうございます。上記前半は

ミキシングモードをメインに使用し、後半はマスクをメインに使用していきます。


マスクを使用する

ブレンディング モードを削除するには、背景に関連する非常に興味深い属性 (

MASK) があります。

mask はマスクと訳されます。 CSS では、マスク属性を使用すると、特定の領域の画像をマスクまたはトリミングすることで、要素の表示領域の一部またはすべてを非表示にすることができます。

マスクを簡単に説明すると、画像を柔軟に制御して、一部を表示し、残りの部分を非表示にすることができます。

マスクを使用してパターンをカットします

たとえば。

repeat-linear-gradient

gradient を使用してこのようなグラデーション パターンを作成するとします:

その CSS コードはおそらく次のようになります:

:root {
    $colorMain: #673ab7;
}
{
    background: 
        repeating-linear-gradient(0, $colorSub 0, $colorSub 3px, transparent 3px, transparent 10px),
        repeating-linear-gradient(60deg, $colorSub 0, $colorSub 3px, transparent 3px, transparent 10px),
        repeating-linear-gradient(-60deg, $colorSub 0, $colorSub 3px, transparent 3px, transparent 10px);
}

このパターンに次のようなマスクを重ねると:

{
    mask: conic-gradient(from -135deg, transparent 50%, #000);
}
上のマスクを背景で表すと次のようになります

background: conic-gradient(-135deg、透明50%、 #000 )

、パターンは次のとおりです:

マスクの機能に従って、2 つは一緒に重ね合わされます。背景とマスクによって生成された透明なグラデーションが透明になります。次のような効果が得られます。

##CodePen デモ -- マスクと背景のデモ

背景とマスクの組み合わせが完了しました。マスクを使用して背景効果をカットすると、多くの興味深い背景パターンを作成できます:

#CodePen デモ -- マスクと背景のデモ

mask-composite

または

-webkit-mask-composite

次に、マスクを使用して画像を切り取りながら、

-webkit を使用します。 -mask-composite プロパティ。これは非常に興味深い要素で、mix-blend-mode / background-blend-mode

によく似ています。

-webkit-mask-composite: プロパティは、同じ要素に適用される複数のマスク イメージを相互に合成する方法を指定します。

通俗点来说,他的作用就是,当一个元素存在多重 mask 时,我们就可以运用 -webkit-mask-composite 进行效果叠加。

注意,这里的一个前提,就是当 mask 是多重 mask 的时候(类似于 background,mask 也是可以存着多重 mask),-webkit-mask-composite 才会生效。这也就元素的 mask 可以指定多个,逗号分隔。

假设我们有这样一张背景图:

:root {
    $colorMain: #673ab7;
    $colorSub: #00bcd4;
}
div {
    background: linear-gradient(-60deg, $colorMain, $colorSub);
}

我们的 mask 如下:

{
    mask: 
            repeating-linear-gradient(30deg, #000 0, #000 10px, transparent 10px, transparent 45px),
            repeating-linear-gradient(60deg, #000 0, #000 10px, transparent 10px, transparent 45px),
            repeating-linear-gradient(90deg, #000 0, #000 10px, transparent 10px, transparent 45px);
}

mask 表述成 background 的话大概是这样:

如果,不添加任何 -webkit-mask-composite,叠加融合之后的效果是这样:

如果添加一个 -webkit-mask-composite: xor,则会变成这样:

可以看到,线条的交汇叠加处,有了不一样的效果。

CodePen Demo -- background & -webkit-mask-composite

借助 CSS-Doodle 随机生成图案

了解了基本原理之后,上 CSS-Doodle,我们利用多重 mask 和 -webkit-mask-composite,便可以创造出各式各样的美妙背景图案:

是不是很类似万花筒?

借助了 CSS-Doodle,我们只设定大致的规则,辅以随机的参数,随机的大小。接着就是一幅幅美妙的背景图应运而生。

下面是运用上述规则的尝试的一些图案:

CodePen Demo -- CSS Doodle - CSS MASK Background

当然,可以尝试变换外形,譬如让它长得像个手机壳。

下面两个 DEMO 也是综合运用了上述的一些技巧的示例,仿佛一个个手机壳的图案。

CodePen Demo -- CSS Doodle - CSS MASK Background 2

CodePen Demo -- CSS Doodle - CSS MASK Background 3

总结一下

背景 background 不仅仅只是纯色、线性渐变、径向渐变、角向渐变。混合模式、滤镜、遮罩也并不孤独。

background 配合混合模式 mix-blend-modebackground-blend-mode、滤镜 filter、以及遮罩 mask 的时候,它们就可以组合变幻出各种不同的效果。

到目前为止,CSS 已经越来越强大,它不仅仅可以用于写业务,也可以创造很多有美感的事物,只要我们愿意去多加尝试,便可以创造出美妙的图案。

本文转载自:https://www.cnblogs.com/coco1s/p/14376348.html

作者:ChokCoco

更多编程相关知识,请访问:编程视频!!

以上がCSS バックグラウンドの強力な使用法を例を通して学びます (収集価値あり)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明
この記事は博客园で複製されています。侵害がある場合は、admin@php.cn までご連絡ください。
利用CSS怎么创建渐变色边框?5种方法分享利用CSS怎么创建渐变色边框?5种方法分享Oct 13, 2021 am 10:19 AM

利用CSS怎么创建渐变色边框?下面本篇文章给大家分享CSS实现渐变色边框的5种方法,希望对大家有所帮助!

css ul标签怎么去掉圆点css ul标签怎么去掉圆点Apr 25, 2022 pm 05:55 PM

在css中,可用list-style-type属性来去掉ul的圆点标记,语法为“ul{list-style-type:none}”;list-style-type属性可设置列表项标记的类型,当值为“none”可不定义标记,也可去除已有标记。

css与xml的区别是什么css与xml的区别是什么Apr 24, 2022 am 11:21 AM

区别是:css是层叠样式表单,是将样式信息与网页内容分离的一种标记语言,主要用来设计网页的样式,还可以对网页各元素进行格式化;xml是可扩展标记语言,是一种数据存储语言,用于使用简单的标记描述数据,将文档分成许多部件并对这些部件加以标识。

css3怎么实现鼠标隐藏效果css3怎么实现鼠标隐藏效果Apr 27, 2022 pm 05:20 PM

在css中,可以利用cursor属性实现鼠标隐藏效果,该属性用于定义鼠标指针放在一个元素边界范围内时所用的光标形状,当属性值设置为none时,就可以实现鼠标隐藏效果,语法为“元素{cursor:none}”。

css怎么实现英文小写转为大写css怎么实现英文小写转为大写Apr 25, 2022 pm 06:35 PM

转换方法:1、给英文元素添加“text-transform: uppercase;”样式,可将所有的英文字母都变成大写;2、给英文元素添加“text-transform:capitalize;”样式,可将英文文本中每个单词的首字母变为大写。

rtl在css是什么意思rtl在css是什么意思Apr 24, 2022 am 11:07 AM

在css中,rtl是“right-to-left”的缩写,是从右往左的意思,指的是内联内容从右往左依次排布,是direction属性的一个属性值;该属性规定了文本的方向和书写方向,语法为“元素{direction:rtl}”。

css怎么设置i不是斜体css怎么设置i不是斜体Apr 20, 2022 am 10:36 AM

在css中,可以利用“font-style”属性设置i元素不是斜体样式,该属性用于指定文本的字体样式,当属性值设置为“normal”时,会显示元素的标准字体样式,语法为“i元素{font-style:normal}”。

怎么设置rotate在css3的旋转中心点怎么设置rotate在css3的旋转中心点Apr 24, 2022 am 10:50 AM

在css3中,可以用“transform-origin”属性设置rotate的旋转中心点,该属性可更改转换元素的位置,第一个参数设置x轴的旋转位置,第二个参数设置y轴旋转位置,语法为“transform-origin:x轴位置 y轴位置”。

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

Safe Exam Browser

Safe Exam Browser

Safe Exam Browser は、オンライン試験を安全に受験するための安全なブラウザ環境です。このソフトウェアは、あらゆるコンピュータを安全なワークステーションに変えます。あらゆるユーティリティへのアクセスを制御し、学生が無許可のリソースを使用するのを防ぎます。

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

強力な PHP 統合開発環境

SublimeText3 英語版

SublimeText3 英語版

推奨: Win バージョン、コードプロンプトをサポート!

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール