Ver Mensaje Individual
  #8 (permalink)  
Antiguo 14/02/2017, 06:27
mblascog
 
Fecha de Ingreso: enero-2002
Ubicación: Sabadell
Mensajes: 565
Antigüedad: 22 años, 3 meses
Puntos: 4
Respuesta: Parte siempre visible

Gracias por vuestras sugerencias aunque para mi un poco complicadas, pero con lo dicho he pensado lo siguiente.
Tengo creadas las dos capas, de inicio, la primera visible y la segunda no

Código CSS:
Ver original
  1. #capcalera{
  2.     display:block;
  3.     float:left;
  4.     width:100%;
  5.     background-color:#c2b89f;
  6.     height:89px;
  7.     margin:0
  8. }
  9. #capcalera2{
  10.     display:none;
  11.     float:left;
  12.     width:100%;
  13.     background-color:#c2b89f;
  14.     margin:0;
  15.     top:0;
  16.     position:fixed;
  17. }

Y al detectar el scroll, por jquery, escondo la primera y visualizo la segunda

Código Javascript:
Ver original
  1. $(document).on('scroll', function() {
  2.         if ($(document).scrollTop() > 0) {
  3.             $('#capcalera').fadeOut(500);
  4.             $('#capcalera2').fadeIn(500);
  5.         }
  6.         else {
  7.             $('#capcalera').fadeIn(500);
  8.             $('#capcalera2').fadeOut(500);
  9.         }  
  10.     });

Y funciona bien con un pero. Y es que la segunda, capcalera2, al añadir la propiedad position:fixed para que se quede fija a la parte superior, cambia el tamaño,
es decir:
- capcalera2 con position:fixed hace un ancho de 1920
- capcalera2 sin position:fixed hace un ancho de 1190
Y lo que es correcto, por diseño, es 1190.

Y la pregunta es, qué es lo que provoca el cambio de ancho de la capa?

Gracias
__________________
Qué fácil cuando lo sabes y qué difícil cuando no