Eu tenho uma DIV e gostaria de colocar um padrão como pano de fundo. Esse padrão é cinza. Então, para torná-lo um pouco mais agradável, eu gostaria de colocar uma "camada" de cor transparente e clara. Abaixo está o que eu tentei, mas que não funcionou. Existe uma maneira de colocar a camada colorida sobre a imagem de fundo?
Aqui está o meu CSS:
background: url('../img/bg/diagonalnoise.png');
background-color: rgba(248, 247, 216, 0.7);
Eu sei que esse é um tópico muito antigo, mas aparece no topo do Google, então aqui está outra opção.
Este é CSS puro e não requer nenhum HTML extra.
Há um número surpreendente de usos para o recurso box-shadow.
fonte
box-shadow: inset 0 0 0 100vmax rgba(0, 0, 0, .2)
.Dos truques CSS ... há uma maneira de fazer isso sem a indexação z e a adição de pseudo elementos - requer gradiente linear, o que eu acho que significa que você precisa de suporte CSS3
fonte
background-size:cover;
ebackground-position:center center;
defini esse elemento. Isso parece cancelar esse efeito.Você também pode usar um gradiente linear e uma imagem: http://codepen.io/anon/pen/RPweox
Isso ocorre porque a função gradiente linear cria uma imagem que é adicionada à pilha de plano de fundo. https://developer.mozilla.org/en-US/docs/Web/CSS/linear-gradient
fonte
Você precisa de um elemento de quebra automática com a imagem bg e nele o elemento de conteúdo com a cor bg:
e o css:
fonte
Tente isso. Funciona para mim.
fonte
Usei isso como uma maneira de aplicar tonalidades de cores e gradientes às imagens, para facilitar a criação de textos sobrepostos dinâmicos para facilitar a legibilidade quando você não pode controlar os perfis de cores da imagem. Você não precisa se preocupar com o z-index.
HTML
SASS
CSS
Espero que ajude
fonte
div
tem pelo menos uma posição: relativeVeja minha resposta em https://stackoverflow.com/a/18471979/193494 para obter uma visão geral abrangente de possíveis soluções:
fonte
Por que tão complicado? Sua solução estava quase certa, exceto que é muito mais fácil tornar o padrão transparente e a cor de fundo sólida . PNG pode conter transparências. Portanto, use o photoshop para tornar o padrão transparente, definindo a camada para 70% e salvando sua imagem novamente. Então você só precisa de um seletor. Funciona em vários navegadores.
CSS:
HTML:
Este é o básico. Um exemplo de uso segue de onde eu mudei
background
para,background-image
mas ambas as propriedades funcionam da mesma maneira.POR FAVOR, ESPERE UM MINUTO! Leva algum tempo para carregar os padrões externos.
Este site parece ser bastante lento ...
fonte
:hover
e isso seria sobreposto à imagem de plano de fundo?Você pode usar um pixel semitransparente, que você pode gerar por exemplo aqui , mesmo em base64 Aqui está um exemplo com 50% de branco:
sem fazer upload
sem html extra
Eu acho que o carregamento deve ser mais rápido que o gradiente linear ou sombra de caixa
fonte
Aqui está um truque mais simples, com apenas css.
fonte
Outro com um SVG como imagem de sobreposição embutida (nota: se você usar
#
dentro do código svg, precisará codificá-lo!):fonte
Eu simplesmente usei a propriedade background-image css na div background de destino.
Observe que a imagem de plano de fundo aceita apenas funções de cores degradê.
Então, usei gradiente linear adicionando a mesma cor de sobreposição desejada duas vezes (use o último valor de rgba para controlar a opacidade da cor).
Além disso, encontrou esses dois recursos úteis para:
HTML
CSS
fonte
Você também pode adicionar opacidade à sua cor de sobreposição.
Em vez de fazer
Você pode fazer:
Em seguida, crie um novo estilo para a cor da opacidade:
Altere a opacidade para o número que desejar abaixo de 1. Em seguida, você torna esse estilo de cor do mesmo tamanho da sua imagem. Deveria funcionar.
fonte