A blur filter creates a vertical line effect on the right side of the image

In the process of creating a story section for the website, I have included the following scss code for a story:

    .story{
    width: 75%;
    background-color: $color-white;
    font-size: 1.6rem;
    margin: 0 auto;
    box-shadow: 0 3rem 6rem rgba(0,0,0,0.2);
    border-radius: .1rem;
    padding: 4rem;
    padding-left: 5.5rem;
    transform: skewX(-12deg);

    &__shape{
        height: 15rem;
        width: 15rem;
        float: left;
        shape-outside: circle(50% at 50% 50%);
        clip-path: circle(50% at 50% 50%);
        transform: translateX(-1.5rem) skewX(12deg);
        position: relative;
    }

    &__img{
        height: 100%;
        transform: translateX(-4rem) scale(1.4);
        backface-visibility: hidden;
        transition: all .5s;
    }

    &__text{
        transform: skewX(12deg);
    }

    &__caption{
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%,20%);
        font-size: 1.7rem;
        text-transform: uppercase;
        color: $color-white;
        text-align: center;
        opacity: 0;
        transition: all .5s;
        backface-visibility: hidden;
    }

    &:hover &__caption{
        transform: translate(-50%,-50%);
        opacity: 1;
    }

    &:hover &__img{
        transform: translateX(-4rem) scale(1);
        filter: blur(3px) brightness(80%);
    }
}

Upon hovering, a vertical line appears on the right side of the image and is no longer visible when not hovered over. Images of the issue are shown below.

Without hover: https://i.sstatic.net/0LTD4.png

With hover: https://i.sstatic.net/NdrHg.png

This issue is specific to Google Chrome and does not occur in Mozilla Firefox.

Answer №1

Encountering an issue with filter: blur(); and clip-path? If your shape is a circle, consider using border-radius to resolve it.

One possible solution is to include the following styles in the parent element of the image:

&__shape{
  /* add */      
  border-radius: 100%; /* this will create a circular form similar to your clip-path */
  overflow: hidden; /* hides content outside of the form, including the unwanted line */
}

By applying overflow: hidden; + border-radius: 100%; on the parent element, you can effectively eliminate the bug causing the issue.

Similar questions

If you have not found the answer to your question or you are interested in this topic, then look at other similar questions below or use the search

Creating equal-sized borders for symbols of varying sizes: a step-by-step guide

Utilizing Font Awesome icons along with their fa-border style: <i class="fa fa-twitter fa-5x fa-border icon-blue"></i> <i class="fa fa-question fa-5x fa-border icon-grey"></i> The border size created varies based on the symbol siz ...

Implement dynamic page titles with breadcrumbs in Laravel 8 for a seamless user experience

I am currently utilizing the laravel-breadcrumbs package created by diglactic in conjunction with laravel 8, which is a fork from davejamesmiller/laravel-breadcrumbs. My goal is to incorporate a dynamic page title that aligns with this breadcrumbs package. ...

The CSS div gradually descends as I increase the width of the browser

I'm in need of assistance with creating a website specifically for mobile devices and tablets. The issue I am facing is that when I expand my browser width to a tablet size, the "loginD" div shifts downwards - view this gif Below is my HTML code: &l ...

What's the best way to position an ion-label at the top of the stack

I'm having trouble creating an input label similar to the new Google style. However, when the label moves up, it gets cut in the middle as shown here. Despite trying to adjust the margin, padding, and Z-index, none of these solutions have resolved my ...

Attempting to devise a jQuery algorithm sorting method

To enhance the answer provided in this post: How to stack divs without spaces and maintain order on smaller screens using Bootstrap I've been exploring ways to develop a jQuery script that dynamically adjusts the margin-top of div elements based on t ...

Disappearing Data in Chart.js When Window is Resized

I am utilizing the Chart.js library to present a line chart in a div that is enclosed within a <tr>. <tr class="item">...</tr> <tr class="item-details"> ... <div class="col-sm-6 col-xs-12 chart-pane"> <div clas ...

Dim the entirety of the page while accentuating specific regions

Check out this demo on JSFiddle I'm trying to figure out how to bring the .highlight element to the front. <body> <p>bla bla</p> <p class="light">highligh this</p> </body> CSS body{ background-color: ...

What is the best way to determine the position of an element with text content

Currently facing an issue with positioning in my project. Attached is a snapshot of my desired layout. I've tried creating a starburst effect and adding text using this code: jsfiddle link, but I'm struggling to position the elements correctly ...

Achieving a smooth transition effect when hovering over an element using only CSS

I am currently facing a challenge in trying to override a running transition using pure CSS. The CSS code I have attempted to overwrite the transition with does not seem to work as expected, and I am unable to comprehend the behavior. Below, you will find ...

When the line-height is adjusted, nearby buttons and the text underneath them will shift downwards after a button is clicked

I am facing a challenge with my .button class. When the button is in its active state, I have added an inset box shadow and increased the line-height by 2 to create a button press effect. However, the adjacent button and text below it also move down, which ...

What is the best way to have a form open upwards when hovered over or clicked on?

Attempting to create a button in the bottom right corner that will reveal a form when clicked or hovered over. The form should slide open slowly and close after clicking on login, but currently the button is moving down as the form opens. The button also ...

Show the center portion of an image without needing to know the size, both horizontally and vertically aligned

I have experimented with various methods like table-cell, but none of them have been successful. All I am seeking is an <img src="" /> within an <a> tag. The <a> element has specific width, height, and overflow:hidden properties set. H ...

"Bootstrap 4 does not allow labels to be displayed inline with the input field

I'm currently working with Bootstrap 4 and Vue.js to populate an input form, but I'm struggling to get the label to appear inline and before the input type file. <div v-for="problem in problems"> <div class="row"& ...

Send a variable to a specific page and locate it within a dropdown menu

I am currently working on an HTML page that displays employee leave details. The page includes a pending leave option with the ability to edit. Users should be able to edit their leave while it is still marked as PENDING. Once the edit button is clicked, t ...

Displaying error message dynamically using ajax

I am looking to customize the way error messages are displayed on my form. Instead of having one generic div above the whole form, I want the error messages to appear next to each input field. <div id="response"><!--This section will show error ...

The issue of the drop-down menu not appearing persists when using HTML and CSS

ul#menu li ,ul.sub-menu li { list-style-type: none; float:left; } ul#menu li a ,ul.sub-menu li a { display: inline-block; width: 150px; height: 40px; text-decoration: none; line-height: 40px; text-align: center; color:rgb(235, 139, 13) ...

Issues arise with the functionality of custom jQuery sliders

I'm attempting to create a bootstrap panel slider using my own jQuery code, but it's not functioning as anticipated. My Objective: I have two links for "previous" and "next", and three panels with distinct headings. When the "previous" link is ...

The sticky position is failing to function properly when I set the float property to the left on other

I noticed that the position sticky for the header stops working once I add float:left to another element. The tricky part is, if I remove the float:left from main>div, the sticky header works fine. Despite my efforts to find a solution through Google, n ...

What is the best way to decrease the width of one of the four columns?

I trust all is well with you. I'm having trouble adjusting the width of one of my table data cells. In the image attached below, you'll notice that my + icon is the same size as the other columns. I'd like to make it much narrower and posit ...

Optimal approach for creating a CSS button with a dynamic size, gradient background and arrow design

I'm utilizing the Zurb Foundation framework and aiming to create dynamic call-to-action buttons with varying sizes, text, a background gradient, and a right-pointing arrow. There are three potential approaches I've envisioned: Employ an a el ...