- CSS Tutorial
- CSS - Home
- CSS - Introduction
- CSS - Syntax
- CSS - Selectors
- CSS - Inclusion
- CSS - Measurement Units
- CSS - Colors
- CSS - Backgrounds
- CSS - Fonts
- CSS - Text
- CSS - Images
- CSS - Links
- CSS - Tables
- CSS - Borders
- CSS - Border Block
- CSS - Border Inline
- CSS - Margins
- CSS - Lists
- CSS - Padding
- CSS - Cursor
- CSS - Outlines
- CSS - Dimension
- CSS - Scrollbars
- CSS - Inline Block
- CSS - Dropdowns
- CSS - Visibility
- CSS - Overflow
- CSS - Clearfix
- CSS - Float
- CSS - Arrows
- CSS - Resize
- CSS - Quotes
- CSS - Order
- CSS - Position
- CSS - Hyphens
- CSS - Hover
- CSS - Display
- CSS - Focus
- CSS - Zoom
- CSS - Translate
- CSS - Height
- CSS - Hyphenate Character
- CSS - Width
- CSS - Opacity
- CSS - Z-Index
- CSS - Bottom
- CSS - Navbar
- CSS - Overlay
- CSS - Forms
- CSS - Align
- CSS - Icons
- CSS - Image Gallery
- CSS - Comments
- CSS - Loaders
- CSS - Attr Selectors
- CSS - Combinators
- CSS - Root
- CSS - Box Model
- CSS - Counters
- CSS - Clip
- CSS - Writing Mode
- CSS - Unicode-bidi
- CSS - min-content
- CSS - All
- CSS - Inset
- CSS - Isolation
- CSS - Overscroll
- CSS - Justify Items
- CSS - Justify Self
- CSS - Tab Size
- CSS - Pointer Events
- CSS - Place Content
- CSS - Place Items
- CSS - Place Self
- CSS - Max Block Size
- CSS - Min Block Size
- CSS - Mix Blend Mode
- CSS - Max Inline Size
- CSS - Min Inline Size
- CSS - Offset
- CSS - Accent Color
- CSS - User Select
- CSS Advanced
- CSS - Grid
- CSS - Grid Layout
- CSS - Flexbox
- CSS - Visibility
- CSS - Positioning
- CSS - Layers
- CSS - Pseudo Classes
- CSS - Pseudo Elements
- CSS - @ Rules
- CSS - Text Effects
- CSS - Paged Media
- CSS - Printing
- CSS - Layouts
- CSS - Validations
- CSS - Image Sprites
- CSS - Important
- CSS - Data Types
- CSS3 Tutorial
- CSS3 - Tutorial
- CSS - Rounded Corner
- CSS - Border Images
- CSS - Multi Background
- CSS - Color
- CSS - Gradients
- CSS - Box Shadow
- CSS - Box Decoration Break
- CSS - Caret Color
- CSS - Text Shadow
- CSS - Text
- CSS - 2d transform
- CSS - 3d transform
- CSS - Transition
- CSS - Animation
- CSS - Multi columns
- CSS - Box Sizing
- CSS - Tooltips
- CSS - Buttons
- CSS - Pagination
- CSS - Variables
- CSS - Media Queries
- CSS - Functions
- CSS - Math Functions
- CSS - Masking
- CSS - Shapes
- CSS - Style Images
- CSS - Specificity
- CSS - Custom Properties
- CSS Responsive
- CSS RWD - Introduction
- CSS RWD - Viewport
- CSS RWD - Grid View
- CSS RWD - Media Queries
- CSS RWD - Images
- CSS RWD - Videos
- CSS RWD - Frameworks
- CSS References
- CSS - Questions and Answers
- CSS - Quick Guide
- CSS - References
- CSS - Color References
- CSS - Web browser References
- CSS - Web safe fonts
- CSS - Units
- CSS - Animation
- CSS Resources
- CSS - Useful Resources
- CSS - Discussion
CSS Masking - mask-image
CSS mask-image property in CSS is used to set the mask image for an element. A mask image defines which parts of an element are visible and which are transparent, allowing you to create complex visual effects. The areas of the element where the mask image is transparent will be fully transparent, and the areas where it is opaque will be fully visible.
Possible Values
none − Default value. The element does not have a mask image applied to it.
<mask-source> − An image can be accessed by a URL reference or an SVG <mask> element.
<image> − Define mask image layer using image().
Applies to
All elements. In SVG, it applies to container elements excluding the <defs> element and all graphics elements
Syntax
Keyword Values
mask-image: none;
<mask-source> Values
mask-image: url(bookmark.png);
<image> Values
mask-image: linear-gradient(rgba(0, 0, 0, 1), transparent); mask-image: image(url(bookmark.png), skyblue);
CSS mask-image - none Value
The following example demonstrates that -webkit-mask-image: none property does not apply any masking effect −
<html> <head> <style> .masking-image { width: 300px; height: 200px; background-color: green; -webkit-mask-image: url('images/bookmark.png'); mask-image:url('images/bookmark.png'); -webkit-mask-size: 100% 100%; mask-size: 100% 100%; -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; -webkit-mask-position: center; mask-position: center; } </style> </head> <body> <h2>With Mask Image</h2> <div class="masking-image"></div><br> <h2>With Mask Image Set To none Value</h2> <div class="masking-image" style="-webkit-mask-image:none;mask-image:none;"></div> </body> </html>
CSS mask-image - <mask-source>
The following example demonstrates the use of -webkit-mask-image: url() property , where the given image of a pink flower is visible only within the shape defined by the mask image −
<html> <head> <style> .masking-image { width: 300px; height: 300px; background-image: url('images/pink-flower.jpg'); background-size: cover; background-position: center; background-repeat: no-repeat; -webkit-mask-image: url('images/bookmark.png'); -webkit-mask-size: 100% 100%; -webkit-mask-repeat: no-repeat; -webkit-mask-position: center; mask-image: url('images/bookmark.png'); mask-size: 100% 100%; mask-repeat: no-repeat; mask-position: center; } </style> </head> <body> <div class="masking-image"></div> </body> </html>
CSS mask-image - <image>
The following example demonstrates that the -webkit-mask-image: linear-gradient(rgba(0, 0, 0, 1), transparent) property applies a linear gradient as a mask −
<html> <head> <style> .masking-image { width: 500px; height: 300px; background-image: url('images/red-flower.jpg'); background-size: cover; background-position: center; background-repeat: no-repeat; -webkit-mask-image: linear-gradient(rgba(0, 0, 0, 1), transparent); -webkit-mask-size: 100% 100%; -webkit-mask-repeat: no-repeat; -webkit-mask-position: center; mask-image: linear-gradient(rgba(0, 0, 0, 1), transparent); mask-size: 100% 100%; mask-repeat: no-repeat; mask-position: center; } </style> </head> <body> <div class="masking-image"></div> </body> </html>