hacer fondo efecto div difuso difuminar difuminado desvanecer desenfoque cristal bordes borde html css blur

html - fondo - Cómo desenfocar(css) div sin desenfocar elemento hijo



efecto cristal css (3)

<div class="row"> <div class="col-lg-3"> <button class="btn"> button </button> </div>

.col-lg-3{ background-color:#8CD6EB; -webkit-filter: blur(3px); -moz-filter: blur(3px); -o-filter: blur(3px); -ms-filter: blur(3px); filter: blur(3px); }

Si no quiero desenfocar el botón, ¿qué debo hacer?

http://jsfiddle.net/L8ksa46g/


¿Cómo deshabilitar el desenfoque en el elemento hijo?

.enableBlur>* { filter: blur(1.2px); } .disableBlur { filter: blur(0); }

<div class="enableBlur"> <hr> qqqqq<br> <span>qqqqq</span><br> <hr class="disableBlur"> <div>aaaaa</div> <div>bbbbb</div> <div class="disableBlur">DDDDD</div> <hr> <img src="https://lh5.googleusercontent.com/-n8FG4f09-ug/AAAAAAAAAAI/AAAAAAAACmA/ldtxmWX1SyY/photo.jpg?sz=48"> <img class="disableBlur" src="https://lh5.googleusercontent.com/-n8FG4f09-ug/AAAAAAAAAAI/AAAAAAAACmA/ldtxmWX1SyY/photo.jpg?sz=48"> </div>


Cuando se utiliza la propiedad de blur u opacity , no es posible ignorar el elemento secundario. Si aplica cualquiera de esas propiedades al elemento primario, también se aplicará automáticamente a los elementos secundarios.

Hay una solución alternativa: cree dos elementos dentro de su div principal: uno para el fondo y otro para el contenido. Establecer position:relative en el div padre y establecer position:absolute; top:0px; right:0px; bottom:0px; left:0px; position:absolute; top:0px; right:0px; bottom:0px; left:0px; (o establezca la altura / anchura al 100%) en el elemento secundario para el fondo. Con este método, el contenido div no se verá afectado por las propiedades en segundo plano.

Ejemplo:

<div id="parent_div" style="position:relative;height:100px;width:100px;"> <div id="background" style="position:absolute;top:0;left:0;right:0;bottom:0;background-color:red;filter: blur(3px);z-index:-1;"></div> <div id="textarea">My Text</div> </div>

Si ve el fondo enmascarando sobre el contenido, utilice la propiedad del z-index para enviar el fondo detrás del segundo div contenido.


Simplemente cree dos divisiones y ajuste sus índices z y márgenes de modo que la división que desea desenfocar se encuentre debajo de la división que desea que aparezca en la parte superior.

PD: No cree división dentro de una división porque el hijo hereda las propiedades del padre.

#forblur { height: 200px; width: 200px; background-color: blue; margin: auto; -webkit-filter: blur(3px); -moz-filter: blur(3px); -o-filter: blur(3px) -ms-filter: blur(3px); filter: blur(3px); z-index: -1; } #on-top-container { margin: auto; margin-top: -200px; text-align: center; height: 200px; width: 200px; z-index: 10; }

<div id="forblur"> </div> <div id="on-top-container"> <p>TEXT</p> </div>