Suppose you want to make text + overlay appear when users hover on a blog image on the Blog Basic Grid Page. You can follow these.
#1. All Blog Pages
Use this code to Custom CSS box
/* Blog grid hover */ @media screen and (min-width:992px) { .blog-basic-grid--text { position: absolute; top: 50%; left: 50%; text-align: center; transform: translate(-50%,-50%); opacity: 0; transition: all 0.3s; width: 100%; height: 100%; display: flex; align-items: center; justify-content: center; flex-direction: column !important; } article.blog-basic-grid--container.entry.blog-item.is-loaded { position: relative !important; transform: unset !important; } .blog-basic-grid article:hover .blog-basic-grid--text { opacity: 1; transition: all 0.3s; } .blog-basic-grid .image-wrapper:after { content: ""; background-color: rgba(0,0,0,0.75); position: absolute; top: 0; left: 0; width: 100%; height: 100%; opacity: 0; transition: all 0.3s; pointer-events: none; } .blog-basic-grid article:hover .image-wrapper:after { opacity: 1; } a.blog-more-link { align-self: center !important; }}
#2. Specific Blog Page
If you want to do this on a specific blog page. First, you can find Blog Page ID. Use below tool.
In my example, we will have:
- #collection-6677756d03a4f15ba27ce9d8
Next, use this CSS code
/* Blog grid hover */ @media screen and (min-width:992px) { #collection-6677756d03a4f15ba27ce9d8 { .blog-basic-grid--text { position: absolute; top: 50%; left: 50%; text-align: center; transform: translate(-50%,-50%); opacity: 0; transition: all 0.3s; width: 100%; height: 100%; display: flex; align-items: center; justify-content: center; flex-direction: column !important; } article.blog-basic-grid--container.entry.blog-item.is-loaded { position: relative !important; transform: unset !important; } .blog-basic-grid article:hover .blog-basic-grid--text { opacity: 1; transition: all 0.3s; } .blog-basic-grid .image-wrapper:after { content: ""; background-color: rgba(0,0,0,0.75); position: absolute; top: 0; left: 0; width: 100%; height: 100%; opacity: 0; transition: all 0.3s; pointer-events: none; } .blog-basic-grid article:hover .image-wrapper:after { opacity: 1; } a.blog-more-link { align-self: center !important; }}}