Foros del Web » Creando para Internet » CSS »

Margin Top no me funciona bien

Estas en el tema de Margin Top no me funciona bien en el foro de CSS en Foros del Web. Hola, espero que estén bien. Tengo un problema con los margin-top. En realidad no se si el error estará entre el teclado y la silla, ...
  #1 (permalink)  
Antiguo 11/05/2010, 23:31
 
Fecha de Ingreso: mayo-2010
Mensajes: 10
Antigüedad: 14 años, 7 meses
Puntos: 1
Margin Top no me funciona bien

Hola, espero que estén bien. Tengo un problema con los margin-top. En realidad no se si el error estará entre el teclado y la silla, o si es que existirá la posibilidad de que tenga que cambiar el codigo o algo así.

Resulta que lo que quiero es poner 2 Navbar Horizontales, una a la par del titulo o logo de la página y la segunda debajo del slogan.

Con la primera ya tuve éxito, pero con la segunda me está dando dolores de cabeza.

Para mayor orden, yo dividí el sitio en:

Cuerpo: segundo cuerpo para centrar todo el contenido de la página
Encabezado: Donde va el titulo, slogan y NavBar1
Contenido: Donde va la NavBar2 y la información a mostrar
Enlaces de Interés: para poner el facebook y otros enlaces
Pie de Página: el Copyright, numero de contacto y otra mini NavBar Horizontal.

Resulta que en el div de contenido, tengo 2 div mas, uno de Menu para el NavBar2 y otro de información, para escribir el texto a mostrar.

Los margin-top de estas dos divs, no me funcionan. Yo cambio sus valores y no muestran algún cambio de posición, ni en internet explorer, ni en firefox.

Necesito tener un espacio razonal para que se vea bien la página.

Otro punto adicional es que el cuerpo para centrar el contenido de la página es de 900px de ancho. El div de enlace de interés tiene una imagen como fondo, de 900px, sin embargo, no se por qué esta no cubre toda esta área.

Es la segunda vez que trato de crear esta página. A la primera el margin me presentaba el mismo problema, pero el Div de enlaces de interés funcionaba vez.

Esta segunda vez, los margins no funcionan y el div de enlaces de interés me da problemas.

Aqui esta el codigo de la pagina y del .css
El .css esta ordenado de acuerdo a la pagina, se le da formato a los tags de acuerdo a su orden de aparición en la pagina.

Voy a senalar las áreas que tienen el problema en el html y en el .css.

Ademas, voy a poner una imagen de el diseno como deberia ser, y de como va implementado por el momento.

Por cierto, ambos margin-top de los dos div, no hacen cambios ni con numeros positivo ni con numeros negativos. Ni suben, ni bajan.

HTML:

Código HTML:
Ver original
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  4. <link rel="stylesheet" href="style/iWanaStyle.css" />
  5. <title>Untitled Document</title>
  6. </head>
  7.  
  8. <div class="Cuerpo">
  9.  
  10. <div class="Encabezado">
  11. <a class="Logo" title="iWanaTech Soluciones Informáticas"><img alt="iWanaTech" src="imagenes/Logo.png" width="231" height="119" /></a>
  12. <img class="Slogan" alt="Solucines Informáticas a Su Alcance" title="Soporte Técnico, Redes y Software a Su Alcance" src="imagenes/Slogan.png" width="902" height="126" />
  13.  
  14. <div class="Menu1">
  15.  
  16. <ul class="Opciones1">
  17.  
  18. <li><a class="inicio" title="iWanaTech Soluciones Informáticas" href="index.html"><img alt="Inicio" src="imagenes/BtnInicioSel1.png" width="123" height="38" /></a></li>
  19. <li><a class="soporte1" title="Soporte Técnico" href="index.html"></a></li>
  20. <li><a class="redes1" title="Soporte de Redes" href="index.html"></a></li>
  21. <li><a class="software1" title="Desarrollo de Software" href="index.html"></a></li>
  22. <li><a class="contacto1" title="Contáctenos" href="index.html"></a></li>
  23.  
  24. </ul>
  25.  
  26. </div>
  27.  
  28. </div>
  29.  
  30. <div class="Contenido"> [B]Este Div si funciona bien con sus margins[/B]
  31.  
  32. <div class="Menu2"> [B]Div con problemas de Margin-top[/B]
  33.  
  34. <ul class="Opciones2">
  35.  
  36. <li><a class="QuienesSomos" title="iWanaTech Soluciones Informáticas" href="index.html"><img alt="Inicio" src="imagenes/BtnQuienesSomos.png" width="168" height="84" /></a></li>
  37. <li><a class="soporte2" title="Soporte Técnico" href="index.html"><img alt="Soporte Técnico" src="imagenes/BtnSoporte2.png" width="168" height="84" /></a></li>
  38. <li><a class="redes2" title="Soporte de Redes" href="index.html"><img alt="Soporte de Redeso" src="imagenes/BtnRedes2.png" width="168" height="84" /></a></li>
  39. <li><a class="software2" title="Desarrollo de Software" href="index.html"><img alt="Desarrollo de Software" src="imagenes/BtnSoftware2.png" width="168" height="84" /></a></li>
  40. <li><a class="contacto2" title="Contáctenos" href="index.html"><img alt="Contáctenos" src="imagenes/BtnContacto2.png" width="168" height="84" /></a></li>
  41.  
  42. </ul>
  43.  
  44. </div>
  45.  
  46. <div class="Informacion">[B] Div con problema de Margin-top[/B]
  47.  
  48. <h1>Bienvenidos a iWanaTech</h1>
  49. <p>IwanaTech es una empresa que se dedica a soluciones de tecnologías de información. Los servicios que se brindan son de soporte técnico, instalación o mantenimiento de redes y desarrollo de sistemas informáticos.</p>
  50.  
  51. <h2>Misión</h2>
  52. <p>Proveer servicios de tecnologías de información a nuestros clientes, formando lazos con ellos, basándose en la confianza.</p>
  53.  
  54. <h2>Visión</h2>
  55. <p>er la mejor empresa que brinda servicios de soporte técnico, redes, y desarrollo de software y que a la vez mantiene excelentes relaciones con sus clientes.</p>
  56.  
  57. </div>
  58.  
  59.  
  60. </div>
  61.  
  62. <div class="EnlacesInteres">
  63. </div>
  64.  
  65. <div class="Pie">
  66. </div>
  67.  
  68. </div>
  69.  
  70. </body>
  71. </html>

.CSS

Código CSS:
Ver original
  1. @charset "utf-8";
  2. /* CSS Document */
  3. body{
  4.     background-image:url(../imagenes/Nav%20Bar.png);
  5.     background-repeat:repeat-x;
  6. }
  7.  
  8. img{
  9.     border:0;
  10. }
  11.  
  12. .Cuerpo{
  13.     width:900px;
  14.     margin:0 auto;
  15. }
  16.  
  17. .Slogan{
  18.     margin-top:7px;
  19. }
  20.  
  21. .Menu1{
  22.     margin-left:260px;
  23.     margin-top:-163px;
  24. }
  25.  
  26. .Opciones1{
  27.     margin:0;
  28.     padding:0;
  29.     list-style:none;
  30. }
  31.  
  32. .Opciones1 li{
  33.     float:left;
  34. }
  35.  
  36. .Opciones1 li a{
  37.     text-decoration:none;
  38.     margin-left:2px;
  39.     display:block;
  40.     width:123px;
  41.     height:38px;
  42. }
  43.  
  44. .inicio{
  45.     background-image:url(../imagenes/BtnInicio1.png);
  46. }
  47.  
  48. .soporte1{
  49.     background-image:url(../imagenes/BtnSoporte1.png);
  50. }
  51.  
  52. .redes1{
  53.     background-image:url(../imagenes/BtnRedes1.png);
  54. }
  55.  
  56. .software1{
  57.     background-image:url(../imagenes/BtnSoftware1.png);
  58. }
  59.  
  60. .contacto1{
  61.     background-image:url(../imagenes/BtnContacto1.png);
  62. }
  63.  
  64. .inicio:hover{
  65.     background-image:url(../imagenes/BtnInicioSel1.png);
  66. }
  67.  
  68. .soporte1:hover{
  69.     background-image:url(../imagenes/BtnSoporteSel1.png);
  70. }
  71.  
  72. .redes1:hover{
  73.     background-image:url(../imagenes/BtnRedesSel1.png);
  74. }
  75.  
  76. .software1:hover{
  77.     background-image:url(../imagenes/BtnSoftwareSel1.png);
  78. }
  79.  
  80. .contacto1:hover{
  81.     background-image:url(../imagenes/BtnContactoSel1.png);
  82. }
  83.  
  84. .Contenido{
  85.     width:900px;
  86.     margin-top:162px;
  87.     border-left:#EAEAEA thin solid;
  88.     border-right:#EAEAEA thin solid;
  89. }
  90.  
  91. .Menu2{
  92.     margin-top:23px;<- Margin top con problemas numeros positivos y negativos
  93.     margin-left:15px;
  94.     margin-right:15px;
  95. }
  96.  
  97. .Opciones2{
  98.     margin:0;
  99.     padding:0;
  100.     list-style:none;
  101. }
  102.  
  103. .Opciones2 li{
  104.     float:left;
  105. }
  106.  
  107. .Opciones2 li a{
  108.     text-decoration:none;
  109.     margin-left:5px;
  110.     display:block;
  111.     width:168px;
  112.     height:84px;
  113. }
  114.  
  115. .Informacion{
  116.     margin-top:20px;<- Margin top con problemas numeros positivos y negativos
  117.     margin-left:30px;
  118.     margin-right:30px;
  119. }
  120.  
  121. .EnlacesInteres{
  122.     width:900px;
  123.     height:58px;
  124.     margin-top:-20px;
  125.     background-image:url(../imagenes/FondoEnlaceInteres.png);
  126.     background-repeat:no-repeat;
  127. }


Diseno original



Pagina Implementada




gracias por su ayuda y tiempo

Última edición por konejo; 11/05/2010 a las 23:39
  #2 (permalink)  
Antiguo 12/05/2010, 12:11
Avatar de Tecna  
Fecha de Ingreso: enero-2010
Mensajes: 291
Antigüedad: 14 años, 11 meses
Puntos: 45
Respuesta: Margin Top no me funciona bien

Buenas,

he bajado y probado tu código y funciona correctamente. Al principio no funcionaba pero era porque tenía al final de cada línea caracteres extraños de retorno de carro que añaden algunos editores al estilo windows. Y también falta el fin de fichero. El intérprete de html se traga todo, aunque crea espacios "fantasma" que afectan a la separación entre elementos, pero el css lo ignora y no aplicaba los estilos. Una vez que he limpiado el código funcionaba correctamente, tanto con valores positivos como negativos. Sólo comentarte dos cosas por si pudieran afectarte, que los margenes verticales adyacentes de elementos en bloque dentro del flujo normal del documento se cierran, es decir se fusionan y toman el valor del mayor de ellos, aunque no es tu caso porque tal como está ahora Menu2 no tiene margin botton que se pudiera fusionar con el margin top de Información. Y otra que al modificar el margin top de Menu2 la posición de Información también se vería modificada.

Respecto al otro problema con el ancho y las esquinas mal alineadas lo generan los bordes que pones en .Contenido (líneas 87 y 88 del código CSS).

Por otro lado y ya como consejos es importante validar el código, la etiqueta <body> la abres al final del documento. Para ver como se posicionan los elementos es mejor poner un borde y colores simples antes de añadir las imagenes y resto de cosas que puedan estorbar, tambíen es mejor usar propiedades resumidas que hacen que el código sea mas límpio y corto. Si el estilo sólo lo usa un elemento es mejor usar id que clase, tienen mas peso especifico las declaraciones. Y mejor siempre usar los nombres con minúsculas así hay menos posibilidad de error al usar desde lenguajes que sí hagan distinción como por ejemplo css. Pero todo esto ya es mi opinión y cada uno tendrá la suya.
  #3 (permalink)  
Antiguo 12/05/2010, 14:24
 
Fecha de Ingreso: mayo-2010
Mensajes: 10
Antigüedad: 14 años, 7 meses
Puntos: 1
Respuesta: Margin Top no me funciona bien

Muchas gracias tecna
Voy a poner en practica sus consejos, porke me parecen muy utiles y muy practicos.

Eso del id y el class no lo sabía, entonces, de ahora en adelante usaré el id para referirme a objetos en el html.

Ya logré solucionar lo del ancho, cambié las medidas tal y como ud me dijo.

Con lo del margin, me pasó algo curioso.

Yo uso el dreamweaver cs4, seguro este editor agrega esos caracteres extranos que me dijo que aparecen ahí.
Otra solución que encontré para el margin-top, fue poner los contenedores div con la propiedad:

float:left

no se que tan práctico será hacer esto, pero una vez que lo hice, pude posicionar los objetos tal y como necesitaba. Ya los margin-top comenzaron a funcionar.

Estoy empezando en esto del html y css, entonces en realidad, no se que estaré haciendo bien o mal.

En fin, gracias por sus comentarios ahora me kedó mucho mas claro todo este asunto.

Gracias por su tiempo y ayuda


Cuando termine la página, subo el codigo .css y el html para que lo vean. Asi si alguien necesita ayuda sobre estas cosas o si hay cosas que hice aqui que no son sanas hacerlas, el codigo podrá usarse como ejemplo.

Etiquetas: margin, top
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 07:01.