CSS mask property masks and displays an image at a particular position to partially or completely hide an element. The property is a shorthand for the CSS properties: mask-clip, mask-composite, mask-image, mask-mode, mask-origin, mask-position, mask-repeat and mask-size
Syntax
mask: <mask-image> <mask-mode> <mask-composite> <mask-clip> <mask-origin> <mask-position> <mask-repeat> <mask-size> | initial | inherit;
Property Values
Value | Description |
---|---|
mask-image | It specifies an image for the mask layer for an element. Default value is none. |
mask-mode | It specifies whether the mask layer image should be luminance mask or alpha mask. Default value is match-source. |
mask-composite | It specifies a compositing operation used on the current mask layer with the below mask layers. Default value is add. |
mask-clip | It specifies the area affected by a mask image. Default value is border-box. |
mask-origin | It specifies the origin position of a mask layer image. Default value is border- box. |
mask-position | It sets the starting position of a mask image relative to the mask position area. Default value is 0% 0%. |
mask-repeat | It specifies how a mask image will be repeated. Default value is repeat. |
mask-size | It specifies the size of the mask layer image. Default value is auto. |
initial | It sets the property to its default value. |
inherit | It inherits the property from the parent element. |
Examples of CSS Mask Property
The following examples explain the mask property with different values.
Defining Multiple Values using Mask Property
The mask property is a shorthand property for eight properties. Some of the properties are optional and may not be needed. In the following example five properties’ values have been defined namely: mask-image, mask-mode, mask-repeat, mask-position and mask-size.
Example
<!DOCTYPE html><html><head><style></style></head><body><h2>.masked { height: 200px; mask: url('/css/images/logo.png') no-repeat no-repeat 45% 50%; }
</h2><h4>CSS mask property
</h4><div class="masked"><img src="/css/images/scenery.jpg"mask:
</h4><img src="/css/images/scenery.jpg"alt="flow" height=300 width=500></div><h4> image used:
alt="flow" height=150 width=200></body></html></pre>
Constiutent Properties of Mask Property
The mask property is a shorthand property for eight properties. These eight properties can be used individually to produce the same effect produced by the mask proeprty. Some properties have been used individually in the following example to show the same effect as in the above example.
Example
<!DOCTYPE html><html><head><style></style></head><body><h2>.masked { height: 200px; mask-image: url('/css/images/logo.png'); mask-mode: no-repeat; mask-repeat: no-repeat; mask-position: 45%; mask-size: 50%; }
</h2><h4>CSS mask property
</h4><h4>mask-image: url("logo")
</h4><h4>mask-mode: no-repeat
</h4><h4>mask-repeat: no-repeat
</h4><h4>mask-position: 45%
</h4><div class="masked"><img src="/css/images/scenery.jpg"mask-size: 50%
alt="flow" height=300 width=500></div><h4>image used:</h4><img src="/css/images/scenery.jpg" alt="flow" height=150 width=200></body></html></pre>
Mask Property with Gradients
The mask property can be used with gradients, to produce visual effects. In the following example linear-gradient and radial-gradient have been used.
Example
<!DOCTYPE html><html><head><style>.masked1 { mask: linear-gradient(to right bottom, black, transparent); }
</style></head><body><h2>.masked2 { mask: radial-gradient(circle, black 35%, rgba(0, 0, 0, 0.5) 60%); }
</h2><h4>CSS mask property
</h4><div class="masked1"><img src="/css/images/scenery.jpg"mask: linear-gradient (to right bottom, black, transparent)
</h4><div class="masked2"><img src="/css/images/scenery.jpg"alt="flow" height=200 width=400></div><h4> mask: radial-gradient (circle, black 35%, rgba(0, 0, 0, 0.5) 60%)
</h4><img src="/css/images/scenery.jpg"alt="flow" height=200 width=400></div><h4> image used:
alt="flow" height=150 width=200></body></html></pre>
Leave a Reply