Kaydol

Merhaba Sevgili Floodlar.com Kullanıcısı, Web sitemizde geçirdiğiniz zaman ve bu büyüleyici flood evrenine katılımınız için teşekkür ederiz. Floodların geniş dünyasıyla dolu deneyiminizi daha fazla keşfetmek için, web sitemizi sınırsız olarak kullanabilmeniz adına giriş yapmanız gerekmektedir.

Oturum aç

Merhaba Floodlar.com Kullanıcısı, İlk üç sayfayı tamamladınız, tebrikler! Ancak, floodların devamını görmek ve daha fazla interaktif deneyim yaşamak için giriş yapmanız gerekiyor. Hesabınız yoksa, hızlıca oluşturabilirsiniz. Sınırsız floodlar ve etkileşimler sizleri bekliyor. Giriş yapmayı unutmayın!

Şifremi hatırlamıyorum

Şifreniz mi unuttunuz? Endişelenmeyin! Lütfen kayıtlı e-posta adresinizi giriniz. Size bir bağlantı göndereceğiz ve bu link üzerinden yeni bir şifre oluşturabileceksiniz.

Fil Necati Masonlar Locası Subreddit Adı Nedir? Cevap: ( N31 )

Üzgünüz, flood girme izniniz yok, Flood girmek için giriş yapmalısınız.

Lütfen bu Floodun neden bildirilmesi gerektiğini düşündüğünüzü kısaca açıklayın.

Lütfen bu cevabın neden bildirilmesi gerektiğini kısaca açıklayın.

Lütfen bu kullanıcının neden rapor edilmesi gerektiğini düşündüğünüzü kısaca açıklayın.

Mobil Uygulamada Açın

Güncel Floodlar En sonuncu Nesne

CSS’nin mask-imaj özelliği ile resimlere efektler uygulayın

CSS’nin mask-imaj özelliği ile resimlere efektler uygulayın

kullanarak bir öğeyi kırptığınızda clip-path özelliği sayesinde kırpılan alan görünmez olur. Bunun yerine görüntünün bir bölümünü opak yapmak veya ona başka bir efekt uygulamak istiyorsanız, o zaman maskeleme kullanmanız gerekir. Bu gönderi, nasıl kullanılacağını açıklar mask-image maske katmanı olarak kullanılacak bir görüntü belirtmenize izin veren CSS özelliği. Bu size üç seçenek sunar. Bir görüntü dosyasını maskeniz, bir SVG veya bir degrade olarak kullanabilirsiniz.

Tarayıcı Uyumluluğu #

Çoğu tarayıcı, standart CSS maskeleme özelliği için yalnızca kısmi desteğe sahiptir. kullanmanız gerekecek -webkit- En iyi tarayıcı uyumluluğunu elde etmek için standart özelliğe ek olarak önek. Görmek CSS Maskelerini kullanabilir miyim? tam tarayıcı desteği bilgileri için.

tarayıcı desteği

  • Chrome 1, Desteklenir 1
  • Firefox 53, Desteklenir 53
  • Kenar 79, Desteklenen 79
  • Safari 15.4, Desteklenir 15.4

Kaynak

Prefixed özelliğini kullanan tarayıcı desteği iyi olsa da, bir görüntünün üstündeki metni görünür yapmak için maskelemeyi kullanırken, maskeleme kullanılamıyorsa ne olacağına dikkat edin. desteğini tespit etmek için özellik sorgularını kullanmak faydalı olabilir. mask-image veya -webkit-mask-image ve maskelenmiş sürümünüzü eklemeden önce okunabilir bir geri dönüş sağlamak.

@supports(-webkit-mask-image: url(#mask)) or (mask-image: url(#mask)) {
/* code that requires mask-image here. */
}

Bir görüntü ile maskeleme #

bu mask-image özellik şuna benzer şekilde çalışır: background-image mülk. Kullanın url() bir görüntüde iletilecek değer. Maske resminizin şeffaf veya yarı şeffaf bir alana sahip olması gerekir.

Tamamen şeffaf bir alan, görüntünün o alanın altındaki kısmının görünmez olmasına neden olur. Bununla birlikte, yarı saydam olan bir alanın kullanılması, orijinal görüntünün bir kısmının görünmesine izin verecektir. Aşağıdaki Glitch’teki farkı görebilirsiniz. İlk görsel maskesiz balonların orijinal görselidir. İkinci görüntüde, tamamen şeffaf bir arka plan üzerinde beyaz bir yıldız bulunan bir maske uygulanmış. Üçüncü görüntünün, degrade şeffaflığı olan bir arka plan üzerinde beyaz bir yıldızı vardır.

Bu örnekte ben de kullanıyorum mask-size değeri olan özellik cover. Bu özellik şu şekilde çalışır: background-size. Anahtar kelimeleri kullanabilirsiniz cover Ve contain veya herhangi bir geçerli uzunluk birimi veya yüzde kullanarak arka plana bir boyut verebilirsiniz.

Küçük bir görüntüyü yinelenen bir model olarak kullanmak için, tıpkı bir arka plan görüntüsünü tekrarladığınız gibi maskenizi de yineleyebilirsiniz.

SVG ile maskeleme #

Maske olarak bir görüntü dosyası kullanmak yerine SVG kullanabilirsiniz. Bunu başarmanın birkaç yolu var. Birincisi, bir &LTmask> SVG içindeki öğe ve bu öğenin kimliğine referans mask-image mülk.

svg width="0" height="0" viewBox="0 0 400 300">
defs>
mask id="mask">
rect fill="#000000" x="0" y="0" width="400" height="300">&LT/rect>
circle fill="#FFFFFF" cx="150" cy="150" r="100" />
circle fill="#FFFFFF" cx="50" cy="50" r="150" />
&LT/mask>
&LT/defs>
&LT/svg>

div class="container">
img src="balloons.jpg" alt="Balloons">
&LT/div>

.container img {
height: 100%;
width: 100%;
object-fit: cover;
-webkit-mask-image: url(#mask);
mask-image: url(#mask);
}

Bu yaklaşımın avantajı, maskenin yalnızca bir görüntüye değil, herhangi bir HTML öğesine uygulanabilmesidir. Ne yazık ki Firefox, bu yaklaşımı destekleyen tek tarayıcıdır.

Yine de her şey bitmiş değil, bir görüntüyü maskelemeye ilişkin en yaygın senaryoda olduğu gibi, görüntüyü SVG’ye dahil edebiliriz.

Gradyan ile maskeleme #

Maskeniz olarak bir CSS gradyanı kullanmak, bir görüntü veya SVG oluşturma zahmetine girmeden maskelenmiş bir alan elde etmenin zarif bir yoludur.

Örneğin, maske olarak kullanılan basit bir doğrusal gradyan, bir görüntünün alt kısmının bir başlığın altında çok koyu olmamasını sağlayabilir.

Desteklenen degrade türlerinden herhangi birini kullanabilir ve istediğiniz kadar yaratıcı olabilirsiniz. Bu sonraki örnek, başlığın arkasını aydınlatmak için dairesel bir maske oluşturmak için radyal bir gradyan kullanır.

Birden fazla maske kullanma #

Arka plan görüntülerinde olduğu gibi, istediğiniz efekti elde etmek için bunları birleştirerek birden fazla maske kaynağı belirleyebilirsiniz. Bu, özellikle maskeniz olarak CSS gradyanlarıyla oluşturulan bir deseni kullanmak istiyorsanız kullanışlıdır. Bunlar genellikle birden çok arka plan görüntüsü kullanır ve bu nedenle kolayca bir maskeye çevrilebilir.

Örnek olarak, güzel bir dama tahtası deseni buldum. Bu makale. Arka plan resimlerini kullanan kod şöyle görünür:

background-image:
linear-gradient(45deg, #ccc 25%, transparent 25%),
linear-gradient(-45deg, #ccc 25%, transparent 25%),
linear-gradient(45deg, transparent 75%, #ccc 75%),
linear-gradient(-45deg, transparent 75%, #ccc 75%);
background-size:20px 20px;
background-position: 0 0, 0 10px, 10px -10px, -10px 0px;

Bunu veya arka plan görüntüleri için tasarlanmış diğer herhangi bir deseni bir maskeye dönüştürmek için, background-* ilgili özelliklere sahip mask özellikler de dahil olmak üzere -webkit ön ekli olanlar

-webkit-mask-image:
linear-gradient(45deg, #000000 25%, rgba(0,0,0,0.2) 25%),
linear-gradient(-45deg, #000000 25%, rgba(0,0,0,0.2) 25%),
linear-gradient(45deg, rgba(0,0,0,0.2) 75%, #000000 75%),
linear-gradient(-45deg, rgba(0,0,0,0.2) 75%, #000000 75%);
-webkit-mask-size:20px 20px;
-webkit-mask-position: 0 0, 0 10px, 10px -10px, -10px 0px;

Görüntülere degrade desenler uygulayarak yapılabilecek gerçekten güzel efektler var. Glitch’i yeniden karıştırmayı ve diğer bazı varyasyonları test etmeyi deneyin.

Kırpmanın yanı sıra CSS maskeleri, bir grafik uygulaması kullanmaya gerek kalmadan resimlere ve diğer HTML öğelerine ilgi katmanın bir yoludur.

fotoğrafı çeken Julio Rionaldo Unsplash’ta.

İlgili Mesajlar

Yorum eklemek için giriş yapmalısınız.