CSS混合模式

來源:互聯網
上載者:User

標籤:css

層疊上下文z-index只是解決兩個元素覆蓋,誰離使用者更近的問題。而CSS混合模式,則是處理兩個元素覆蓋部分如何混合的問題。如果瞭解photoshop的話,對這種現象應該不陌生。CSS3有兩個與混合模式相關的屬性:mix-blend-modebackground-blend-mode,本文將詳細介紹CSS混合模式

 

元素混合

元素混合mix-blend-mode應用於兩個元素之間的混合

mix-blend-mode

初始值: normal

應用於: 所有元素

繼承性: 無

值: normal(正常) | multiply(正片疊底) | screen(濾色) | overlay(疊加) | darken(變暗) | lighten(變亮) | color-dodge(顏色減淡) | color-burn(顏色加深) | hard-light(強光) | soft-light(柔光) | difference(差值) | exclusion(排除) | hue(色相) | saturation(飽和度) | color(顏色) | luminosity
(亮度) | initial(初始) | inherit(繼承) | unset(複原)

相容性: IE瀏覽器、android4.4-不支援,safari和IOS需要添加-webkit-首碼

[注意]該元素會建立層疊上下文,z-index屬性有效

背景混合

背景混合background-blend-mode應用於一個元素的多背景圖或背景圖與背景顏色之間的混合

background-blend-mode

初始值: normal

應用於: 所有元素

繼承性: 無

值: normal(正常) | multiply(正片疊底) | screen(濾色) | overlay(疊加) | darken(變暗) | lighten(變亮) | color-dodge(顏色減淡) | color-burn(顏色加深) | hard-light(強光) | soft-light(柔光) | difference(差值) | exclusion(排除) | hue(色相) | saturation(飽和度) | color(顏色) | luminosity
(亮度) | initial(初始) | inherit(繼承) | unset(複原)

相容性: IE瀏覽器、android4.4-不支援,safari和IOS需要添加-webkit-首碼

 

隔離

隔離isolation的作用是建立一個堆疊上下文stacking context,主要用於與mix-blend-mode屬性一起使用時,將混合模式只應用於某一個元素或某一組元素

isolation

初始值: auto

應用於: 所有元素

繼承性: 無

值: auto | isolate(建立新的堆疊上下文) | initial | inherit | unset

<style>body{background-color: gray;}.test1,.test2{display: inline-block;width: 100px;height: 100px;border:1px solid black;}.test2{isolation: isolate;}.in{width: 50px;height: 50px;background-color: red;mix-blend-mode: screen;}</style></head><body><div class="test1">    <div class="in"></div></div><div class="test2">    <div class="in"></div></div>

如果不使用isolation: isolate建立堆疊上下文,由於.test1.test2背景顏色透明,則.in會和<body>背景顏色混合,成為粉色。使用isolation: isolate後,.test2<body>中隔離出來,不與<body>的背景進行混合,從而保留其原先的紅色

[注意]由於isolation: isolate的作用就是建立堆疊上下文,所以只要能建立堆疊上下文,就可以實現隔離的效果,所以,類似地,relative、filter等樣式也可以實作類別似效果


CSS混合模式

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.