Foros del Web » Creando para Internet » CSS »

[SOLUCIONADO] Problema con posicionamiento fijo

Estas en el tema de Problema con posicionamiento fijo en el foro de CSS en Foros del Web. Buenas, tengo una web con un banner, un menú horizontal justo debajo del baner y debajo el contenido. El banner y el menú los tengo ...
  #1 (permalink)  
Antiguo 29/03/2013, 04:15
Avatar de temerariomalaga  
Fecha de Ingreso: marzo-2013
Ubicación: Londres
Mensajes: 156
Antigüedad: 11 años
Puntos: 9
Problema con posicionamiento fijo

Buenas, tengo una web con un banner, un menú horizontal justo debajo del baner y debajo el contenido. El banner y el menú los tengo con un posicionamiento fijo, para que al bajar el cursor siempre aparezcan (como si utilizase los obsoletos frames). El problema está en que no se que posicionamiento ponerle al contenidopara que no se vea por debajo del banner y el menú cuando me desplazo por la web.
Dejo aquí un poco del código HTML y el CSS correspondiente a los div.
Código HTML:
Ver original
  1. <div id="banner">
  2.             <img src="images/banner.gif">
  3.         </div>
  4.         <div id="menu">
  5.             <ul>
  6.                 <li><a href="index.html">inicio</a>
  7.                 <li><a href="firmas.html">firmas</a>
  8.                 <li><a href="productos.html">productos</a>
  9.                 <li><a href="descargas.html">descargas</a>
  10.                 <li><a href="contacto.php">contacto</a>
  11.             </ul>
  12.         </div>
  13.         <div id="text">
  14.                          .
  15.                          .
  16.                          .
  17.                          .
Código CSS:
Ver original
  1. #banner {
  2.     position: fixed;
  3.     top: 0px;
  4.     left: 300px;
  5.     }
  6. #menu {
  7.     text-align: center;
  8.     list-style-type: none;
  9.     position: fixed;
  10.     top: 120px;
  11.     left: 400px;
  12.     }
  13. #menu li a {
  14.     color: #000;
  15.     font-size: 25px;
  16.     font-family: "Comic Sans MS";
  17.     font-weight: bold;
  18.     text-transform: uppercase;
  19.     text-decoration: none;
  20.     padding-left: 20px;
  21.     padding-right: 20px;
  22.     padding-top: 7px;
  23.     padding-bottom: 7px;
  24.     }
  25. #menu li {
  26.     display: inline;
  27.     background-color: #CC6600;
  28.     text-align: center;
  29.     padding-top: 24px;
  30.     padding-bottom: 17px;
  31.     }
  32. #text {
  33.     margin-left: 30px;
  34.     text-align: center;
__________________
Málaga Club de Fútbol: Memoria, Compromiso, Fe
  #2 (permalink)  
Antiguo 29/03/2013, 04:21
Avatar de pzin
Moderata 😈
 
Fecha de Ingreso: julio-2002
Ubicación: Islas Canarias
Mensajes: 10.488
Antigüedad: 21 años, 8 meses
Puntos: 2114
Respuesta: Problema con posicionamiento fijo

Colócale a div#text una posición relativa y un z-index mayor que los elementos fijos, que en este caso no tienen.

Código CSS:
Ver original
  1. div#text {
  2.   position: relative;
  3.   z-index: 5;
  4. }

De todas formas me parece un poco extraño que se le ponga una posición fija a un menú que luego vaya a ser oculto por el contenido. Normalmente este tipo de consultas es al revés. Pero bueno, igual tiene sentido al ver el sitio.
  #3 (permalink)  
Antiguo 29/03/2013, 04:48
Avatar de temerariomalaga  
Fecha de Ingreso: marzo-2013
Ubicación: Londres
Mensajes: 156
Antigüedad: 11 años
Puntos: 9
Respuesta: Problema con posicionamiento fijo

Cita:
Iniciado por Bonez Ver Mensaje
De todas formas me parece un poco extraño que se le ponga una posición fija a un menú que luego vaya a ser oculto por el contenido. Normalmente este tipo de consultas es al revés. Pero bueno, igual tiene sentido al ver el sitio.
Creo que me expliqué mal. El problema es que se oculta, yo lo que quiero es que no se me oculte el menú por el texto si no como tu dices no tiene mucho sentido
__________________
Málaga Club de Fútbol: Memoria, Compromiso, Fe
  #4 (permalink)  
Antiguo 29/03/2013, 04:55
Avatar de pzin
Moderata 😈
 
Fecha de Ingreso: julio-2002
Ubicación: Islas Canarias
Mensajes: 10.488
Antigüedad: 21 años, 8 meses
Puntos: 2114
Respuesta: Problema con posicionamiento fijo

Ahora ya vuelves a pisar el suelo de los mortales.

Pero realmente, con sólo ese código, tendría que ocurrir así. Supongo que entonces falta código ahí. O si es mucho y lo tienes colgado también vale una URL.
  #5 (permalink)  
Antiguo 29/03/2013, 05:00
Avatar de temerariomalaga  
Fecha de Ingreso: marzo-2013
Ubicación: Londres
Mensajes: 156
Antigüedad: 11 años
Puntos: 9
Respuesta: Problema con posicionamiento fijo

Lo tengo en modo local porque no quiero tocar la que tengo colgada hasta que no solucione ese tema. Voy a intentar explicarme de nuevo a ver si me explico mejor
Tal como está la página se me quedan fijos el baner y el menú pero al desplazar la página el texto se mete por debajo del baner y el menú. Yo quiero que pase eso pero que no se vea el texto que ya ha pasado por ahí, porque el menú y el baner no ocupan todo el ancho de la pantalla y por los laterales que no hay nada se ve el texto por debajo del baner y el menú.
No se si me he explicado mejor o peor de antes asi que espero que entiendas que quiero decirte
__________________
Málaga Club de Fútbol: Memoria, Compromiso, Fe
  #6 (permalink)  
Antiguo 29/03/2013, 05:01
Avatar de MTK
MTK
 
Fecha de Ingreso: marzo-2013
Mensajes: 18
Antigüedad: 11 años
Puntos: 2
Respuesta: Problema con posicionamiento fijo

Hola Bonez! Podrías recomendarme a algún miembro del grupo que controle con el tema de empresas que se dediquen a envíos masivos. Llevo desde ayer pero observo que a la gente la cuesta abrirse con un nuevo miembro. Muchas gracias, Marta.
  #7 (permalink)  
Antiguo 29/03/2013, 05:26
Avatar de pzin
Moderata 😈
 
Fecha de Ingreso: julio-2002
Ubicación: Islas Canarias
Mensajes: 10.488
Antigüedad: 21 años, 8 meses
Puntos: 2114
Respuesta: Problema con posicionamiento fijo

Cita:
Iniciado por temerariomalaga Ver Mensaje
Lo tengo en modo local porque no quiero tocar la que tengo colgada hasta que no solucione ese tema. Voy a intentar explicarme de nuevo a ver si me explico mejor
Tal como está la página se me quedan fijos el baner y el menú pero al desplazar la página el texto se mete por debajo del baner y el menú. Yo quiero que pase eso pero que no se vea el texto que ya ha pasado por ahí, porque el menú y el baner no ocupan todo el ancho de la pantalla y por los laterales que no hay nada se ve el texto por debajo del baner y el menú.
No se si me he explicado mejor o peor de antes asi que espero que entiendas que quiero decirte
Aaaaahora...

Puede llegar a ser muy fácil o complicado. Si tienes un fondo de color opaco entonces no hay problema ya que con aplicarle ese color al fondo de los elementos fijos lo demás se ocultaría.

Si tienes un imagen como fondo, entonces depende de cómo esté puesto.


Cita:
Iniciado por MTK Ver Mensaje
Hola Bonez! Podrías recomendarme a algún miembro del grupo que controle con el tema de empresas que se dediquen a envíos masivos. Llevo desde ayer pero observo que a la gente la cuesta abrirse con un nuevo miembro. Muchas gracias, Marta.
No sé a qué te refieres con grupo ni envíos masivos ni nada. Haz tu pregunta en el subforo adecuado.
  #8 (permalink)  
Antiguo 29/03/2013, 06:01
Avatar de temerariomalaga  
Fecha de Ingreso: marzo-2013
Ubicación: Londres
Mensajes: 156
Antigüedad: 11 años
Puntos: 9
Respuesta: Problema con posicionamiento fijo

Pues he hecho de paso una modificación del estilo. He puesto que el color del menú ocupe todo el ancho y así me quito el problema del cambio de contrastes del fondo.
Pues eso solucionado. Ya que tengo este hilo abierto aprovecho y pongo otro problemilla que tengo. Tengo un div flotante para poner las novedades. El div tiene un parrafo con un id para identificar que es la cabecera. Pues bien, al desplazar la página hacia abajo la cabecera se me queda fija y el div se me desplaza hacia arriba con el resto de la página. Eso es por el posicionamiento fijo. El problema está en que al quitarlre el posicionamiento fijo al desplazar el scroll de las noticias, la cabecera se va, y si pongo el div como fijo con 0px a la derecha el texto de la página se mete dentro del div flotante. ¿hay alguna solución para que no se me mueva la cabecera del div?
El html y el css son los siguientes:
Código HTML:
Ver original
  1. <div id="text">
  2.             <div id="notice">
  3.                 <p id="cabecera">Novedades</p>
  4.                 <!--<p class="noticia"><img src="images/arrow.jpg"/>En la sección de contacto encontrará un formulario que puede rellenar para realizar cualquier pregunta o solicitar su clave de descarga.<br><span class="fecha"> Publicado el 30/03/13</span></p>
  5.                 <p class="noticia"><img src="images/arrow.jpg"/>Nueva página!! Ahora podrá acceder desde la siguiente dirección: <a href="http://representacionessuviri.t15.org/">representacionessuviri.t15.org</a><br><span class="fecha"> Publicado el 30/03/13</span></p>-->
  6.                 <p class="noticia"><img src="images/arrow.jpg"/>El día 30 de marzo se procederá a cambiar el servidor de la web, cambiando también su dirección. Más noticias el día 30.<br><span class="fecha"> Publicado el 28/03/13</span></p>
  7.                 <p class="noticia"><img src="images/arrow.jpg"/>Ya está disponible el catálogo de Rovimat de 2013. Búsquelo en la sección de descargas y no olvide solicitar su clave.<br><span class="fecha"> Publicado el 28/03/13</span></p>
  8.                 <p class="noticia"><img src="images/arrow.jpg"/>Próximamente la web cambiará de dirección, permanezca atento al tablón de novedades.<br><span class="fecha"> Publicado el 27/03/13</span></p>
  9.                 <p class="noticia"><img src="images/arrow.jpg"/>En esta sección podrá ver las novedades referentes a la web.<br><span class="fecha"> Publicado el 27/03/13</span></p>
  10.             </div>
Código CSS:
Ver original
  1. #notice{
  2.     float: right;
  3.     border: 3px solid #CC6600;
  4.     height: 300px;
  5.     width: 300px;
  6.     overflow:auto;
  7.     position: fixed right;
  8. #cabecera{
  9.     background-color: #CC6600;
  10.     margin-top: -3px;
  11.     position: fixed;
  12.     width: inherit;
  13.     }
__________________
Málaga Club de Fútbol: Memoria, Compromiso, Fe

Última edición por temerariomalaga; 29/03/2013 a las 06:04 Razón: se me olvido el código
  #9 (permalink)  
Antiguo 29/03/2013, 06:20
Avatar de pzin
Moderata 😈
 
Fecha de Ingreso: julio-2002
Ubicación: Islas Canarias
Mensajes: 10.488
Antigüedad: 21 años, 8 meses
Puntos: 2114
Respuesta: Problema con posicionamiento fijo

Código CSS:
Ver original
  1. position: fixed right;

¿Y esto? Nunca lo he visto.

Quita ese right, así te funcionará bien. Y para ponerlo a la derecha, aplícate a #notice:
Código CSS:
Ver original
  1. right: 0;

Luego #noticie no está bien cerrado. Supongo que será del copy/paste, pero por si acaso…
  #10 (permalink)  
Antiguo 29/03/2013, 06:33
Avatar de temerariomalaga  
Fecha de Ingreso: marzo-2013
Ubicación: Londres
Mensajes: 156
Antigüedad: 11 años
Puntos: 9
Respuesta: Problema con posicionamiento fijo

Lo del fixed right se me coló de hacer pruebas para solucionarlo
Poniendo el position: fixed con el right: 0 sigue persistiendo el problema, el texto del div texto se mete por debajo del texto del div notice y aqui no iba a colar el meter la imagen de fondo porque se iba a notar demasiado la diferencia.
__________________
Málaga Club de Fútbol: Memoria, Compromiso, Fe
  #11 (permalink)  
Antiguo 29/03/2013, 09:08
Avatar de pzin
Moderata 😈
 
Fecha de Ingreso: julio-2002
Ubicación: Islas Canarias
Mensajes: 10.488
Antigüedad: 21 años, 8 meses
Puntos: 2114
Respuesta: Problema con posicionamiento fijo

Sin ver el código completo o a trozos es más difícil saber lo que pasa.

Como ya dije, en caso de haber una imagen de fondo se va a volver más difícil hallar una solución, y eventualmente llegar a ser imposible sólo con CSS.
  #12 (permalink)  
Antiguo 29/03/2013, 09:22
Avatar de temerariomalaga  
Fecha de Ingreso: marzo-2013
Ubicación: Londres
Mensajes: 156
Antigüedad: 11 años
Puntos: 9
Respuesta: Problema con posicionamiento fijo

Cita:
Iniciado por Bonez Ver Mensaje
Sin ver el código completo o a trozos es más difícil saber lo que pasa.

Como ya dije, en caso de haber una imagen de fondo se va a volver más difícil hallar una solución, y eventualmente llegar a ser imposible sólo con CSS.
Pues ahí va el código completo de HTML de dicha página y el CSS correspondiente a las clases que se encuentran en esta página. A ver que se puede hacer, si no pues a acortar la página para que no salga el scroll en el índice
Código HTML:
Ver original
  1.         <div id="banner">
  2.             <img src="images/banner.gif">
  3.         </div>
  4.         <div id="menu">
  5.             <ul>
  6.                 <li><a href="index.html">inicio</a>
  7.                 <li><a href="firmas.html">firmas</a>
  8.                 <li><a href="productos.html">productos</a>
  9.                 <li><a href="descargas.html">descargas</a>
  10.                 <li><a href="contacto.php">contacto</a>
  11.             </ul>
  12.         </div>
  13.         <div id="text">
  14.             <div id="notice">
  15.                 <p id="cabecera">Novedades</p>
  16.                 <!--<p class="noticia"><img src="images/arrow.jpg"/>En la sección de contacto encontrará un formulario que puede rellenar para realizar cualquier pregunta o solicitar su clave de descarga.<br><span class="fecha"> Publicado el 30/03/13</span></p>
  17.                 <p class="noticia"><img src="images/arrow.jpg"/>Nueva página!! Ahora podrá acceder desde la siguiente dirección: <a href="http://representacionessuviri.t15.org/">representacionessuviri.t15.org</a><br><span class="fecha"> Publicado el 30/03/13</span></p>-->
  18.                 <p class="noticia"><img src="images/arrow.jpg"/>El día 30 de marzo se procederá a cambiar el servidor de la web, cambiando también su dirección. Más noticias el día 30.<br><span class="fecha"> Publicado el 28/03/13</span></p>
  19.                 <p class="noticia"><img src="images/arrow.jpg"/>Ya está disponible el catálogo de Rovimat de 2013. Búsquelo en la sección de descargas y no olvide solicitar su clave.<br><span class="fecha"> Publicado el 28/03/13</span></p>
  20.                 <p class="noticia"><img src="images/arrow.jpg"/>Próximamente la web cambiará de dirección, permanezca atento al tablón de novedades.<br><span class="fecha"> Publicado el 27/03/13</span></p>
  21.                 <p class="noticia"><img src="images/arrow.jpg"/>En esta sección podrá ver las novedades referentes a la web.<br><span class="fecha"> Publicado el 27/03/13</span></p>
  22.             </div>
  23.             <div id="c_9d860e05b22e7fbbfb77830a8c791734" class="tiempo"></div><script type="text/javascript" src="http://www.eltiempo.es/widget/widget_loader/9d860e05b22e7fbbfb77830a8c791734"></script>
  24.             <h1>Representaciones Suviri</h1>
  25.             <p>Jesús Suviri, desde 1989 dedicado a la representacion de firmas relacionadas con la cocina, el baño, materiales de construccion, etc... trabajando directamente con profesionales especializados en el sector, en toda la Provincia de Málaga.</p>
  26. </div>
Código CSS:
Ver original
  1. body {
  2.     background: url('images/background.jpg') repeat-y;
  3.     }
  4. #banner {
  5.     position: fixed;
  6.     top: 0px;
  7.     background: url('images/background.jpg') repeat-x;
  8.     padding-left: 300px;
  9.     }
  10. #menu {
  11.     text-align: center;
  12.     list-style-type: none;
  13.     position: fixed;
  14.     top: 130px;
  15.     background: url('images/background.jpg');
  16.     padding-left: 400px;
  17.     }
  18. #menu li a {
  19.     color: #000;
  20.     font-size: 25px;
  21.     font-family: "Comic Sans MS";
  22.     font-weight: bold;
  23.     text-transform: uppercase;
  24.     text-decoration: none;
  25.     padding-left: 20px;
  26.     padding-right: 20px;
  27.     padding-top: 7px;
  28.     padding-bottom: 7px;
  29.     }
  30. #menu li {
  31.     display: inline;
  32.     background-color: #CC6600;
  33.     text-align: center;
  34.     padding-top: 24px;
  35.     padding-bottom: 17px;
  36.     }
  37. #menu a:hover {
  38.     background-color: #00FFFF;
  39.     }
  40. #text {
  41.     margin-left: 30px;
  42.     padding-top: 250px;
  43.     }
  44. #notice{
  45.     float: right;
  46.     border: 3px solid #CC6600;
  47.     height: 300px;
  48.     width: 300px;
  49.     overflow:auto;
  50.     }
  51. #notice p{
  52.     text-align: center;
  53.     }
  54. #cabecera{
  55.     background-color: #CC6600;
  56.     margin-top: -3px;
  57.     position: fixed;
  58.     width: inherit;
  59.     }
  60. #notice img{
  61.     margin-left: 0px;
  62.     margin-right: 5px;
  63.     }
  64. .fecha {
  65.     font-size: 15px;
  66.     }
  67. .noticia{
  68.     padding-top: 5px;
  69.     }
  70. .tiempo{
  71.     float: right;
  72.     clear: right;
  73.     margin-top: 20px;
  74.     }
__________________
Málaga Club de Fútbol: Memoria, Compromiso, Fe
  #13 (permalink)  
Antiguo 29/03/2013, 09:32
Avatar de pzin
Moderata 😈
 
Fecha de Ingreso: julio-2002
Ubicación: Islas Canarias
Mensajes: 10.488
Antigüedad: 21 años, 8 meses
Puntos: 2114
Respuesta: Problema con posicionamiento fijo

Bueno así mucho no vamos a hacer porque sin la imagen de fondo, es difícil. http://jsbin.com/omoluh/1/edit

De todas formas, supongo que lo de novedades estará mal. Aplícale a #notice una posición relativa —los elementos que no tengan una posición estática (por defecto) hacen de contenedor para los elementos posicionados de forma absoluta o fija.

Ahora el asunto del fondo no lo entenderé hasta ver la imagen de fondo ahí bien puesta. Por eso igual es mejor que lo subas a algún sitio aunque sólo sea para verlo.
  #14 (permalink)  
Antiguo 29/03/2013, 09:37
Avatar de temerariomalaga  
Fecha de Ingreso: marzo-2013
Ubicación: Londres
Mensajes: 156
Antigüedad: 11 años
Puntos: 9
Respuesta: Problema con posicionamiento fijo

[URL="http://representacionessuviri.t15.org/index.html"]http://representacionessuviri.t15.org/index.html[/URL]
Ese es el enlace de la web que tengo ahora mismo en el servidor.
__________________
Málaga Club de Fútbol: Memoria, Compromiso, Fe
  #15 (permalink)  
Antiguo 29/03/2013, 10:20
Avatar de pzin
Moderata 😈
 
Fecha de Ingreso: julio-2002
Ubicación: Islas Canarias
Mensajes: 10.488
Antigüedad: 21 años, 8 meses
Puntos: 2114
Respuesta: Problema con posicionamiento fijo

Y lo que quieres es que la cabecera de esas noticias se queda fija, ¿no? Porque entonces sólo tienes que hacer lo que dije arriba para que el contenedor de esas noticias haga de elemento de contención y la posición fija haga referente a este.

Que por cierto, la web se ve bastante mal en una resolución grande (1920):


Deberías de aplicar algún contenedor con un ancho máximo.
  #16 (permalink)  
Antiguo 29/03/2013, 10:31
Avatar de temerariomalaga  
Fecha de Ingreso: marzo-2013
Ubicación: Londres
Mensajes: 156
Antigüedad: 11 años
Puntos: 9
Respuesta: Problema con posicionamiento fijo

Cita:
Iniciado por Bonez Ver Mensaje
Y lo que quieres es que la cabecera de esas noticias se queda fija, ¿no? Porque entonces sólo tienes que hacer lo que dije arriba para que el contenedor de esas noticias haga de elemento de contención y la posición fija haga referente a este.

Que por cierto, la web se ve bastante mal en una resolución grande (1920):


Deberías de aplicar algún contenedor con un ancho máximo.
Pues ya me funciona esto y ahora me pondré con lo que has dicho del ancho máximo, aunque a mi se me ve bien con la misma resolución que dices. Pues ya está, tema solucionado, gracias maestro Bonez.
__________________
Málaga Club de Fútbol: Memoria, Compromiso, Fe
  #17 (permalink)  
Antiguo 31/03/2013, 03:39
Avatar de temerariomalaga  
Fecha de Ingreso: marzo-2013
Ubicación: Londres
Mensajes: 156
Antigüedad: 11 años
Puntos: 9
Respuesta: Problema con posicionamiento fijo

Después de haber puesto el ancho máximo de la pantalla ya me deja de servir la solución del fondo porque el fondo del menú se ha ajustado al ancho nuevo del contendor y ya no ocupa toda la página. ¿Hay alguna forma de "resetear" solamente los div del baner y el menú?
__________________
Málaga Club de Fútbol: Memoria, Compromiso, Fe
  #18 (permalink)  
Antiguo 31/03/2013, 04:39
Avatar de pzin
Moderata 😈
 
Fecha de Ingreso: julio-2002
Ubicación: Islas Canarias
Mensajes: 10.488
Antigüedad: 21 años, 8 meses
Puntos: 2114
Respuesta: Problema con posicionamiento fijo

Pon el menú y el banner en un contenedor que ocupe el 100% del ancho y pones ahí el fondo. Así tendrá siempre el mismo tamaño que el otro fondo.
  #19 (permalink)  
Antiguo 31/03/2013, 05:32
Avatar de temerariomalaga  
Fecha de Ingreso: marzo-2013
Ubicación: Londres
Mensajes: 156
Antigüedad: 11 años
Puntos: 9
Respuesta: Problema con posicionamiento fijo

Ya está solucionado, al final sacando menú y banner del contenedor y asignandole un estilo común a los dos he conseguido que queden centrados y con la imagen de fondo. Gracias por la ayuda.
__________________
Málaga Club de Fútbol: Memoria, Compromiso, Fe

Última edición por temerariomalaga; 31/03/2013 a las 08:45

Etiquetas: fijo, html, php, posicionamiento
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 23:38.