Foros del Web » Creando para Internet » CSS »

Marco "outerglow" para una imagen

Estas en el tema de Marco "outerglow" para una imagen en el foro de CSS en Foros del Web. Buenas, tengo este código : Código: .novedades{ width:920px; float: left; margin-left: 14px; } img.img_left{ float:left; padding:0px 8px 8px 0px; } .offer_box_novedad2{ width:390px; height:126px; float:left; background-color:#CFFFB9; ...
  #1 (permalink)  
Antiguo 14/12/2011, 14:00
 
Fecha de Ingreso: noviembre-2011
Ubicación: Sevilla
Mensajes: 39
Antigüedad: 12 años, 5 meses
Puntos: 1
Marco "outerglow" para una imagen

Buenas, tengo este código :
Código:
.novedades{
	width:920px;
	float: left;
	margin-left: 14px;
}
img.img_left{
float:left;
padding:0px 8px 8px 0px;
}
.offer_box_novedad2{
	width:390px;
	height:126px;
	float:left;
	background-color:#CFFFB9;
	padding:10px;
	margin:7px;	
}
.offer_info{
padding:5px;
}
.offer_info span{
	font-weight:bold;
	color:#260;
}
p.offer{
text-align:justify;
font-size:10px;
}
.more{
float:right;
padding:3px;
}
.price{
float:left;
padding:3px;
}
.more a{
	color:#260;
}
.more a:hover{
text-decoration:none;
}
Código PHP:
<div class="novedades">
          <
div class="offer_box_novedad2" style="margin-left:30px;">
                <
a href="detalle.php"><img src="img.jpg" width="158" height="119" class="img_left" alt="" title="" border="0"/></a>
                <
div class="offer_info">
                <
span>POBLACI&Oacute;(PROVINCIA)</span>
                <
class="offer" style="margin-top:15px; margin-bottom:15px;">
                 
LOREM IPSUM DOLOR SIT AMETCONSECTETUR ADIPISCING ELITNUNC CONDIMENTUM IMPERDIET ANTEAC PULVINAR TURPIS.
                </
p>
                <
div class="more"><a href="detalle.php">...m&aacute;s</a></div>

                <
div class="price"><span>Oferta 80.000&nbsp;&euro;</span></div>
              </
div>
          </
div>
          </
div
y me gustaría que sobre esa imagen (que en realidad está sacada de una bd) apareciera como un marco "difuminado"
he probado intentando ponerle una imagen del mismo tamaño con el marco brillante encima, pero no he podido
¿alguna idea?

Gracias!!!
  #2 (permalink)  
Antiguo 14/12/2011, 14:21
Colaborador
 
Fecha de Ingreso: junio-2007
Mensajes: 5.798
Antigüedad: 16 años, 10 meses
Puntos: 539
Respuesta: Marco "outerglow" para una imagen

¿Podría poder una imagen de qué es exactamente lo que quiere lograr?
En un principio pensé que sería algo que se pudiese simular con box-shadow, pero al leer "he probado intentando ponerle una imagen del mismo tamaño con el marco brillante encima" me he despistado.
  #3 (permalink)  
Antiguo 14/12/2011, 14:27
 
Fecha de Ingreso: noviembre-2011
Ubicación: Sevilla
Mensajes: 39
Antigüedad: 12 años, 5 meses
Puntos: 1
Respuesta: Marco "outerglow" para una imagen

Básicamente lo que quiero conseguir es esto:



Teniendo en cuenta que la imagen está sacada de una base de datos, por lo que no puedo editarla.
  #4 (permalink)  
Antiguo 14/12/2011, 17:01
Avatar de emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 16 años, 9 meses
Puntos: 1567
Respuesta: Marco "outerglow" para una imagen

un poco complicado el no poder editar la imagen.
Podés intentar con esto, pero la condición es que tu imágen sea un fondo, asi que deverías implementar otro div que la contenga

Código HTML:
Ver original
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  2. "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  3. <html xmlns="http://www.w3.org/1999/xhtml">
  4. <title>titulo</title>
  5. <meta http-equiv="content-type" content="text/html; charset=utf-8" />
  6.  
  7. <style type="text/css">
  8. /*<![CDATA[*/
  9.  
  10. .sombra_in {
  11.   -moz-box-shadow:inset 0 0 10px 30px #FFF;
  12.   -webkit-box-shadow:inset 0 0 10px 30px #FFF;
  13.   box-shadow:inset 0 0 10px 30px #FFF;
  14.   background-image: url(uno.jpg);
  15.   width: 300px;
  16.   height: 300px;
  17. }
  18.  
  19. /*]]>*/
  20. </head>
  21. <div class="sombra_in">
  22.  
  23. </div>
  24. </body>
  25. </html>

Saludos
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.

Última edición por emprear; 14/12/2011 a las 17:08
  #5 (permalink)  
Antiguo 14/12/2011, 21:41
 
Fecha de Ingreso: diciembre-2011
Mensajes: 6
Antigüedad: 12 años, 4 meses
Puntos: 0
Información CSS3: Box-shadow

también se puede aplicar a imágenes directamente,
http://www.css3.info/preview/box-shadow/

div es un elemento para agrupar y disponer contenido.

En este caso la imagen debería estar como tal (<img>) ya que no es parte del estilo del sitio, si no mas bien del contenido.

Saludos desde Chile
  #6 (permalink)  
Antiguo 14/12/2011, 22:55
Avatar de emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 16 años, 9 meses
Puntos: 1567
Respuesta: Marco "outerglow" para una imagen

Error. box-shadow no se puede aplicar a un tag img

__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.
  #7 (permalink)  
Antiguo 14/12/2011, 23:46
 
Fecha de Ingreso: diciembre-2011
Mensajes: 6
Antigüedad: 12 años, 4 meses
Puntos: 0
Respuesta: Marco "outerglow" para una imagen

¿porque no?

http://www.w3.org/TR/css3-background/#the-box-shadow

http://www.dynamicdrive.com/style/csslibrary/item/css3_box_shadows_box_shadow_property/
  #8 (permalink)  
Antiguo 15/12/2011, 00:06
Avatar de emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 16 años, 9 meses
Puntos: 1567
Respuesta: Marco "outerglow" para una imagen

http://foros.emprear.com/css/box-shadow/

__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.
  #9 (permalink)  
Antiguo 15/12/2011, 00:26
 
Fecha de Ingreso: diciembre-2011
Mensajes: 6
Antigüedad: 12 años, 4 meses
Puntos: 0
Respuesta: Marco "outerglow" para una imagen

uhhm cierto.
La razón por la que no "funciona" con inset, es porque esta se renderiza tras la imagen, siendo invisible, puedes ver que la sombra si se ve al ser exterior.



para solventar eso, se hace lo que indicas tu, lo tendré en cuenta.
http://trentwalton.com/2010/11/22/css-box-shadowinset/

saludos!
  #10 (permalink)  
Antiguo 15/12/2011, 05:56
 
Fecha de Ingreso: noviembre-2011
Ubicación: Sevilla
Mensajes: 39
Antigüedad: 12 años, 5 meses
Puntos: 1
Respuesta: Marco "outerglow" para una imagen

Entonces supongo que si aplico lo que me pone emprerar, la imagen de fondo del div la tengo que declarar como <div class="outerglow" style="background-image:url(
Código PHP:
<? echo $url;?>)
>
¿no?
  #11 (permalink)  
Antiguo 15/12/2011, 06:15
 
Fecha de Ingreso: noviembre-2011
Ubicación: Sevilla
Mensajes: 39
Antigüedad: 12 años, 5 meses
Puntos: 1
Respuesta: Marco "outerglow" para una imagen

me queda el código tal que así :

.imagen_outerglow{
-moz-box-shadow:inset 0 0 10px 30px #FFF;
-webkit-box-shadow:inset 0 0 10px 30px #FFF;
box-shadow:inset 0 0 10px 30px #FFF;
float:left;
padding:0px 8px 8px 0px;
}

<div class="imagen_outerglow" style="height:119px; width:158px; background-image:url(fotos/S106/thumbs/img796580_1[2] [800x600].jpg);">

y se ve el brillo pero no la imagen

NOTA:
acabo de comprobar que con una imagen no sacada de la bd, funciona perfectamente, así que supongo que el problema estará en la url de la imagen sacada..

NOTA2:
Parece ser que el problema es el espacio del nombre de la imagen...

Última edición por Lucky_Sky; 15/12/2011 a las 06:55 Razón: Aproximación a la solución
  #12 (permalink)  
Antiguo 15/12/2011, 07:23
Avatar de emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 16 años, 9 meses
Puntos: 1567
Respuesta: Marco "outerglow" para una imagen

es muy probable, intentá poner el nombre entre comillas simples

url('nombre de la foto.jpg');

Saludos
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.
  #13 (permalink)  
Antiguo 15/12/2011, 08:12
Colaborador
 
Fecha de Ingreso: junio-2007
Mensajes: 5.798
Antigüedad: 16 años, 10 meses
Puntos: 539
Respuesta: Marco "outerglow" para una imagen

Efectivamente, la sombra en la imagen con valor inset no se muestra.
Tampoco creo muy acertado colocar la imagen como fondo, pues es una información relevante. Es parte del contenido, no del diseño, ornamental.
Por otro lado, el colocarla como background implicaría que habría que definir tantas clases (ids) como productos mostrados. Lo que conllevaría aumentar no sólo el css sino también el código programado.

Así que aquí una idea:
Código HTML:
Ver original
  1. <!DOCTYPE html>
  2. <meta charset="UTF-8">
  3. <title>Kseso? jugando con css</title>
  4. <style type="text/css">
  5. .novedades{
  6.     width:920px;
  7.     float: left;
  8.     margin-left: 14px;
  9. }
  10. img.img_left{
  11.   float:left;
  12.   z-index:1;
  13. }
  14. a.pic_detalle {
  15.     display: block;
  16.     float: left;
  17.     margin-right: 10px;
  18.     overflow: hidden;
  19.     position: relative;
  20. }
  21. a.pic_detalle::after {
  22.     background: transparent;
  23.     box-shadow: 0 0 10px #000000 inset;
  24.     content: "";
  25.     left: 0;
  26.     position: absolute;
  27.     right: 0;
  28.     top: 0;
  29.     bottom: 0;
  30.     z-index: 5;
  31. }
  32. .offer_box_novedad2{
  33.     width:390px;
  34.     height:126px;
  35.     float:left;
  36.     background-color:#CFFFB9;
  37.     padding:10px;
  38.     margin:7px;
  39. }
  40. .offer_info{
  41. padding:5px;
  42. }
  43. .offer_info span{
  44.     font-weight:bold;
  45.     color:#260;
  46. }
  47. p.offer{
  48. text-align:justify;
  49. font-size:10px;
  50. }
  51. .more{
  52. float:right;
  53. padding:3px;
  54. }
  55. .price{
  56. float:left;
  57. padding:3px;
  58. }
  59. .more a{
  60.     color:#260;
  61. }
  62. .more a:hover{
  63. text-decoration:none;
  64. }
  65. </style>   
  66. </head>
  67. <div class="novedades">
  68.           <div class="offer_box_novedad2" style="margin-left:30px;">
  69.                 <a class="pic_detalle" href="detalle.php"><img src="Capturatt.JPG" width="158" height="119" class="img_left" alt="" title="" border="0"/></a>
  70.                 <div class="offer_info">
  71.                 <span>POBLACI&Oacute;N (PROVINCIA)</span>
  72.                 <p class="offer" style="margin-top:15px; margin-bottom:15px;">
  73.                  LOREM IPSUM DOLOR SIT AMET, CONSECTETUR ADIPISCING ELIT. NUNC CONDIMENTUM IMPERDIET ANTE, AC PULVINAR TURPIS.
  74.                 </p>
  75.                 <div class="more"><a href="detalle.php">...m&aacute;s</a></div>
  76.  
  77.                 <div class="price"><span>Oferta : 80.000&nbsp;&euro;</span></div>
  78.               </div>
  79.           </div>
  80.           </div>
  81. </body>
  82. </html>
Sin entrar en la depuración del código, ni tampoco en que quizás sería más indicado una lista desordenada o de definición (ul |ol)

Notas:
El efecto no es exactamente el deseado. Quizás se pueda mejorar añadiendo más valores (múltiples) en box-shadow para simularlo mejor. Y por supuesto cambiar el color al mismo que tiene el contenedor general (#CFFFB9)
  #14 (permalink)  
Antiguo 15/12/2011, 08:44
Avatar de emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 16 años, 9 meses
Puntos: 1567
Respuesta: Marco "outerglow" para una imagen

Cita:
Iniciado por kseso? Ver Mensaje
Tampoco creo muy acertado colocar la imagen como fondo, pues es una información relevante. Es parte del contenido, no del diseño, ornamental.
Creo que si estamo usando HTML5, esto lo subsanaría

Código HTML:
Ver original
  1. <figure title="Descripción foto">
  2. <div class="sombra_in">
  3. <!-- foto -->
  4. </div>

Saludos
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.
  #15 (permalink)  
Antiguo 15/12/2011, 10:09
 
Fecha de Ingreso: noviembre-2011
Ubicación: Sevilla
Mensajes: 39
Antigüedad: 12 años, 5 meses
Puntos: 1
Respuesta: Marco "outerglow" para una imagen

Cita:
Iniciado por emprear Ver Mensaje
es muy probable, intentá poner el nombre entre comillas simples

url('nombre de la foto.jpg');

Saludos
lo solucioné así :
$url=str_replace(" ","%20",$regfoto['url']);

en cuanto a lo de no ponerla como fondo del div, creo que no he entendido muy bien lo que me sugerís...
  #16 (permalink)  
Antiguo 15/12/2011, 10:29
Avatar de emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 16 años, 9 meses
Puntos: 1567
Respuesta: Marco "outerglow" para una imagen

mirá el ejemplo
http://foros.emprear.com/css/box-shadow/
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.
  #17 (permalink)  
Antiguo 15/12/2011, 11:26
 
Fecha de Ingreso: noviembre-2011
Ubicación: Sevilla
Mensajes: 39
Antigüedad: 12 años, 5 meses
Puntos: 1
Respuesta: Marco "outerglow" para una imagen

Cita:
Iniciado por emprear Ver Mensaje
mirá el ejemplo
[url]http://foros.emprear.com/css/box-shadow/[/url]
así es como lo he solucionado, pero tengo la imagen de fondo del div
  #18 (permalink)  
Antiguo 15/12/2011, 11:43
Avatar de emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 16 años, 9 meses
Puntos: 1567
Respuesta: Marco "outerglow" para una imagen

justamente esa es mi solución, ponerla como fondo del div (por lo menos, en particular, para este efecto con inset) y no como img.

__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.
  #19 (permalink)  
Antiguo 15/12/2011, 15:33
Colaborador
 
Fecha de Ingreso: junio-2007
Mensajes: 5.798
Antigüedad: 16 años, 10 meses
Puntos: 539
Respuesta: Marco "outerglow" para una imagen

@emprear:
creo que no me expliqué bien.

No me refería a que fuese correcto o no (en función de qué doctype se declare) su propuesta.
Era una manifestación de mis preferencias. O de lo que yo creo que es más acertado.
Soy de los que opinan que todo aquello que sea contenido (información) debería colocarse en el html.
Y todo aquello que sea ornamental (parte del layout o maquetación) vía css.
Así que como yo veo esa imagen como parte de la información facilitada a los posibles compradores de la "oferta" por eso mi enfoque a que esté vía img src.

A lo 2ª que decía sobre tantos #id´s como ofertas mostradas (para poder poner una imagen distinta en cada oferta) es porque presupuse que no sólo habrá 1 oferta (y siempre la misma). Por esto mismo me refería al uso de listas.
Vamos, que mi propuesta era para el siguiente caso:



La imagen sin redimensionar por el foro para que se aprecie un poco mejor el glow: http://img543.imageshack.us/img543/783/glowcss.jpg

El css, ahora ya con un poco más de tiempo para lograr el glow, es básicamente el mismo de mi anterior comentario:
Código CSS:
Ver original
  1. a.pic_detalle {
  2.     display: block;
  3.     float: left;
  4.     margin-right: 10px;
  5.     position: relative;
  6. }
  7. a.pic_detalle::after {
  8.     background: transparent;
  9.     box-shadow: 0 0 10px 10px #CFFFB9 inset;
  10.     content: "";
  11.     left: 0;
  12.     position: absolute;
  13.     right: 0;
  14.     top: 0;
  15.     bottom: 0;
  16.     z-index: 5;
  17. }
Y el marcado con listas:
Código HTML:
Ver original
  1. <dl id="novedades">
  2.     <dt>NOVEDADES</dt>
  3.       <dd>
  4.         <a class="pic_detalle" href="detalle.php"><img src="loast-tags.jpg" width="158" height="119" class="img_left" alt="alt" /></a>
  5.         <p> LOREM IPSUM DOLOR SIT AMET.</p>
  6.         <a class="more_info" href="#">Más Información</a>
  7.        </dd>
  8.        
  9.       <dd>
  10.         <a class="pic_detalle" href="detalle.php"><img src="301923114.jpg" width="158" height="119" class="img_left" alt="alt" /></a>
  11.         <p> LOREM IPSUM DOLOR SIT AMET</p>
  12.         <a class="more_info" href="#">Más Información</a>
  13.        </dd>
  14.        
  15.       <dd>
  16.         <a class="pic_detalle" href="detalle.php"><img src="t0alt.jpg" width="158" height="119" class="img_left" alt="alt" /></a>
  17.         <p> LOREM IPSUM DOLOR SIT AMET</p>
  18.         <a class="more_info" href="#">Más Información</a>
  19.        </dd>
  20.  </dl>

Que lo bueno de los enfoques distintos es que se encuentras diferentes soluciones y así se puede escoger.
  #20 (permalink)  
Antiguo 15/12/2011, 16:23
Avatar de emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 16 años, 9 meses
Puntos: 1567
Respuesta: Marco "outerglow" para una imagen

Cita:
@kseso?
Que lo bueno de los enfoques distintos es que se encuentras diferentes soluciones y así se puede escoger.
Completamente de acuerdo.
Y como observación general, según sea el post, trato de dar una solución puntual, válida, y sencilla de implementar. Es más, ni siquiera vi todo el bloque de código en su conjunto, cosa que vos si hiciste en detalle, y te tomaste el trabajo de ejemplificar.


Saludos
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.

Etiquetas: hover, marco, tamaño, fondo
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 16:56.