CSS灰度图像无法将标题变为不同的颜色

时间:2016-03-02 22:19:46

标签: html css header grayscale

我在设置标题h2的颜色时出现问题,该标题位于我设置为灰度的图像之上。我希望它是橙色的,但是当我添加灰度时,它会覆盖我的CSS以使h2文本变灰。

我的html代码如下:

<div id="thumbnails" class="pt-page  pt-page-current">
            <div class="scalediv">
                <div class="row no-gutter" data-id="one">
                    @for (var i = 0; i < Model.Count; i++)
                    {
                        <div class="col-xs-12 col-sm-6 col-md-6 col-lg-6">                            
                                <figure class="callpost" data-num="@Model.Article[i].DataNumber" style="background-image: url('@String.Format("data:image/png;base64,{0}", Convert.ToBase64String(@Model.Article[i].Picture.Image))');" data-property="border-width" data-from="0" data-to="35px">
                                    <div class="content">
                                        <div class="content-wraper">                                            
                                            <h2>@Model.Article[i].Title</h2>                                                                                                                                       
                                            <div class="excerpt">@Model.Article[i].IntroText</div>
                                            <div class="postinfo"> ARTICLES <span>@Convert.ToDateTime(Model.Article[i].DateCreated).ToString("dd/MM/yyyy")</span> </div>
                                        </div>
                                    </div>
                                </figure>                            
                        </div>
                    }                    
                    <div class="clear"></div>
                </div>
            </div>

这是我用于灰度的CSS:

#thumbnails figure {
    -webkit-filter: grayscale(100%);
    filter: grayscale(100%);
    -webkit-transition: .3s ease-in-out;
    transition: .3s ease-in-out;      
}
#thumbnails figure:hover {
    -webkit-filter: grayscale(0);
    filter: none !important;    
}

我试过像这样添加css:

#thumbnails figure h2{
    color: #DD2C00 !important;
}

这是标题的CSS:

figure .content  h2 {            
    color: #DD2C00;
    font-family: FuturaBT-Medium;
    font-size: 40px;
    font-weight: normal;
    letter-spacing: 0;
    line-height: 47px;
    margin-bottom: 20px;                       
}

除了其他尝试并尝试更改h2的CSS,但是当图像处于灰度级时,我无法将标题显示为橙色。

任何想法或指示都会非常感激。

1 个答案:

答案 0 :(得分:0)

您的代码不起作用,因为过滤器是在DOM渲染后计算的。因此,!important无效。

要将滤镜效果禁用为h2,您需要将其取出。您可以通过不同的方式在视觉上将h2放在图上,例如负边距。

实施例:https://jsfiddle.net/j9fbc0sw/3/

对不起我的英文)