Можно ли использовать градиент над фоновым изображением CSS?

Я пытаюсь получить div с синим фоновым изображением шириной 500 пикселей. Затем я пытаюсь сделать градиент белым в самом левом углу от div, и когда он идет вправо, фоновое изображение медленно видно

2 ответа

Этот код CSS будет полезен, чтобы сделать его градиентным

.gradient {
    width: 200px;
    height: 200px;

    background: #999; /* for non-css3 browsers */

    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#cccccc', endColorstr='#000000'); /* for IE */
    background: -webkit-gradient(linear, left top, left bottom, from(#ccc), to(#000)); /* for webkit browsers */
    background: -moz-linear-gradient(top,  #ccc,  #000); /* for firefox 3.6+ */ 
}

Используйте вышеупомянутый CSS в HTML, используя класс

<div class="gradient">
    gradient box
</div>

На самом деле я только что опубликовал нечто похожее на другой вопрос, но это применимо и в этом случае. Вот оно в действии:

http://sassmeister.com/gist/3528cb23d3e831231949

И CSS для достижения этого эффекта:

.hero {
 width: 100%;
 height: 500px;
 background: url("http://placesheen.com/1200/500") center center no-repeat;
 background-size: cover;
 }
.hero:before {
content: '';
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
height: 508px;
background-image: linear-gradient(rgba(255, 255, 255, 0.2), white);
}

Конечно, обязательно добавьте правильные префиксы вендоров, чтобы они были совместимы с разными браузерами. И если вы хотите изменить направление градиента, вы измените значения градиента.

HTML:

<div class="hero">
    You could put content here if you want
</div>

Подробнее о градиентах: http://www.w3schools.com/css/css3_gradients.asp

Другие вопросы по тегам