萬聖節、(CSS) 面具和邏輯門
在這個網站上,每週都有一個 Meme Monday 主題,我通常會在其中發布 comiCSS 卡通並尋找靈感。上週,@webbureaucrat 分享了一幅引起我注意的漫畫:
我發現這很有趣,並決定使用 HTML 和 CSS 使用蒙版創建我自己的版本。
乍一看,第一行似乎很容易製作:兩個徑向漸層並選擇最好的光罩複合材料。第二排似乎更具挑戰性。增加一個額外的漸層就足夠了嗎?
忽略線條和南瓜燈的臉部特徵(稍後將添加),卡通的底部將是兩個相交的圓圈。為了實現這一點,我創建了一個具有兩個徑向漸變的蒙版:
.pumpkin { mask: /* trick */ radial-gradient(circle at 40% 60%, #000 25%, #0000 0), /* treat */ radial-gradient(circle at 60% 60%, #000 25%, #0000 0); }
從那裡,我知道我需要使用 mask-composite 或非標準 -webkit-mask-composite 以不同的方式組合遮罩。
這是一個初步嘗試,在 Firefox 上不起作用。我會留下圖片:
這些是我使用的值:
- 或:初始。不需要特殊值,因為預設值它們都會重疊。我甚至不需要添加掩模複合材料。
- AND:相交。應用的蒙版將是所有蒙版的交集。在本例中,是兩個圓的交點。
- 異或:排除。這允許有兩種選擇。對於 mask-composite 來說,排除可以透過 except 來實現。但我們也可以使用 -webkit-mask-composite 的異或值...在這種情況下更有意義,但如上所述,它是非標準的。
對於第二行,我需要第三個遮罩來佔據整個容器(還需要一個用於 NAND 的遮罩!)我必須承認,這有點混亂:
- NOR:-webkit-mask-composite:目的地輸出。因為佔據整個容器的蒙版是最後一個,所以前一個蒙版中的像素(相當於“trick OR treat”)被清除,留下南瓜外面的空間有顏色。
- NAND:掩模複合:減法。我用太多層(4)使這一層變得過於複雜,試圖保持它的標準並使用單一掩模複合值。
- XNOR:-webkit-mask-composite:異或。諷刺的是。為了建立 XNOR,我們使用異或值,但使用會導致「翻轉」選擇的附加層。
很亂。 Temani Afif 和Ana Tudor — 如果您還沒有關注他們,您應該在社交媒體上關注他們,他們在CSS 方面非常出色—,他們參與並幫助簡化了代碼並使用了標準的mask- composite 屬性。
結果如下。它需要為每個單元格設定掩碼,並內聯指示掩碼複合值。當我這樣做時,我決定稍微擴展一下這個笑話,並添加一些更多的邏輯門(其中一些需要的不僅僅是 2 和 3 個掩碼):
comiCSS版本
雖然它運作得很好,但我決定製作一個較短的版本,僅使用我發布的 CSS 漫畫的 CSS 標準(您也可以在 Medium 上關注它!)
它僅使用由兩個遮罩產生的邏輯閘和標準遮罩複合屬性,因此它可以在所有瀏覽器中運作。另外,它單獨展示了每個值。有趣且有教育意義(我希望)。
以上是萬聖節、(CSS) 面具和邏輯門的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

您是否曾經在項目上需要一個倒計時計時器?對於這樣的東西,可以自然訪問插件,但實際上更多

在元素個數不固定的情況下如何通過CSS選擇第一個指定類名的子元素在處理HTML結構時,常常會遇到元素個數不�...

關於Flex佈局中紫色斜線區域的疑問在使用Flex佈局時,你可能會遇到一些令人困惑的現象,比如在開發者工具(d...

格子呢是一塊圖案布,通常與蘇格蘭有關,尤其是他們時尚的蘇格蘭語。在Tartanify.com上,我們收集了5,000多個格子呢

在Safari中使用自定義樣式表的問題探討今天我們來探討一個關於Safari瀏覽器的自定義樣式表應用問題。前端新手...
