水平菜单适合100%,文本堆栈左侧

时间:2016-10-17 16:43:41

标签: html css xhtml

我有一个水平菜单,我无法找到适合我的100%中心容器页面(从左侧到右侧)的方法。 此外,我希望每个 html主列表都位于水平菜单的左侧。

我认为这与我的CSS代码有关...

现在我的网站看起来像这样:Link to image



body {
  background-color: #2A2A2A;
}
h1 {
  color: #FCFCFC;
  padding-left: 8px;
  background-color: 494949;
  width: 100%;
  height: 50px;
  margin: 0px 0px 7px 0px;
  /* margen arriba , margen dercha, margen abajo, margen izquierda  */
  border-bottom: 2.5px solid #C69AD3;
  /*sombra color del solido*/
  font-family: 'Oswald', sans-serif;
  text-shadow: 3px 3px #353535;
  font-size: 200%;
}
.center {
  margin: auto;
  width: 100%;
  padding: 10px;
  text-align: left;
  text-align: bottom;
}
p {
  color: white;
  font-family: 'Oswald', sans-serif;
  text-shadow: 0, 5px 0, 5px #343434
}
* {
  margin: 0px;
  /* 		colocacion del header en los id="header"		*/
  padding: 0px;
  /* 		colocacion del header en los id="header"		*/
}
#container {
  width: 80%;
  margin: 0 auto;
  text-align: left;
}
#header {
  background: #545;
  margin: 3px 5px 3px 0x;
  /* margen arriba , margen dercha, margen abajo, margen izquierda  */
  color: white;
  font-family: 'Oswald', sans-serif, Helvetica, sans-serif;
  text-shadow: 1px 1px #494949;
}
ul,
ol {
  text-align: center;
  list-style: none;
  /* con el "list-style:none" hacemos que no se vean puntos ni otras formas en las listas, de modo que las palabras quedan solas en forma de lista. */
  overflow: hidden;
}
.nav > li {
  float: left;
  /*posicion del menu horizontal*/
}
.nav li a {
  background-color: 494949;
  /*Color botones menú sin seleccion*/
  color: #fff;
  text-decoration: none;
  /* quitamos el subrallado */
  padding: 10px 100px;
  /* altura y anchura del menu */
  display: block;
  margin: 0px 0px 1px 1px;
  /* margen arriba , margen dercha, margen abajo, margen izquierda  */
}
.nav li a:hover {
  /* "hover" es cuando tienes el mouse encima*/
  background-color: #6B6B6B;
}
.nav li ul {
  display: none;
  position: absolute;
  /* posicion en cuando se despliega el menu, absolute=se abre y no mueve nada, relative=se desplaza todo objeto que este debajo */
  white-space: nowrap;
  text-align: left;
}
.nav li:hover > ul {
  display: block;
}
.nav li ul li ul {
  right: -140px;
  top: 0px;
}

<html>

<head>
  <title>Practica A3</title>

  <link rel="stylesheet" type="text/css" href="estilo1.css" />

</head>

<div id="container">

  <h1 class="center">Hello this is the website</h1>

  <body>

    <div id="header">
      <nav class="menu-fixed">
        <!-- Iniciamos la etiqueta del menu -->
        <ul class="nav">
          <!-- Inicio TODO -->
          <li><a href="">Inicio</a>
          </li>
          <!-- Principal -->
          <li><a href="">Servicios</a>	
            <!-- Principal -->
            <ul>
              <!-- Inicio secundaria -->
              <li><a href="">Compra de entradas</a>
              </li>
              <!-- Secundaria -->
              <li><a href="">Consulta de conciertos</a>
              </li>
              <!-- Secundaria -->
              <li><a href="">Salas privadas</a>
              </li>
              <!-- Secundaria -->
              <li><a href="">Reserva de mesas</a>
              </li>
              <!-- Secundaria -->
            </ul>
            <!-- Final secundaria -->
          </li>
          <li><a href="">Acerca de</a> 
            <!-- Principal -->
            <ul>
              <!-- Inicio secundaria -->
              <li><a href="">Submenu1</a>
              </li>
              <!-- Secundaria -->
              <li><a href="">Submenu2</a>
              </li>
              <!-- Secundaria -->
              <li><a href="">Submenu3</a>
              </li>
              <!-- Secundaria -->
              <li><a href="">Submenu4</a>
              </li>
              <!-- Secundaria -->
            </ul>
            <!-- Final secundaria -->
          </li>
          <li><a href="">Contacto</a>
          </li>
          <!-- Principal -->
        </ul>
        <!-- Final TODO -->
      </nav>
      <!-- Cerramos el menu con la nav -->
    </div>
    </br>
    </br>
    </br>
    </br>
    </br>


    <p>Este es contenido de la pagina web. Simplemente se trata de un texto laaaaaaargo para ver como se posiciona y que tal quedaria con el resultado final.</br>
      Esto es todo, gracias por la atencion.</p>

  </body>

</div>

</html>
&#13;
&#13;
&#13;

1 个答案:

答案 0 :(得分:0)

Also Live on fiddle您的导航栏获得了全宽(80%)的容器。现在的问题是你用边框底部设置h1和.center类的宽度为100%。如果删除h1和.center类的宽度,它将进入容器宽度。 菜单文本中心问题设置.nav li a {padding:10px 100px 10px 10px;}就像这样。另外在你的css中有一些无用的属性,我在css部分注释掉了,并试着用评论做一个简短的描述 如果您对此有任何疑问。你可以在评论部分问我。谢谢

body {
  background-color: #2A2A2A;
}

h1 {
  color: #FCFCFC;
  padding-left: 8px;
  background-color: #494949;
  /*In here you don't set # so the color not showing */
  height: 50px;
  margin: 0px 0px 7px 0px;
  /* margen arriba , margen dercha, margen abajo, margen izquierda  */
  border-bottom: 2.5px solid #C69AD3;
  /*sombra color del solido*/
  font-family: 'Oswald', sans-serif;
  text-shadow: 3px 3px #353535;
  /* font-size: 200%; [By default h1 font-size 2em means 200% so I don't think you need to use it again ] */
}

.center {
  margin: auto;
  padding: 10px;
  text-align: left;
  /*text-align: bottom; [This css is invalid. Three types is valid text-align: left/center/right]*/
}

p {
  color: white;
  font-family: 'Oswald', sans-serif;
  text-shadow: 0, 5px 0, 5px #343434
}

* {
  margin: 0px;
  /* 		colocacion del header en los id="header"		*/
  padding: 0px;
  /* 		colocacion del header en los id="header"		*/
}

#container {
  width: 80%;
  margin: 0 auto;
  /*text-align: left; [it means inside all text element will be align left. Don't use it here. User where you need. ] */
    }
  #header {
     background: #545;
  /*   margin: 3px 5px 3px 0x; [This margin will be invalid coz you missed the "P" from last 0px] */
  /* margen arriba , margen dercha, margen abajo, margen izquierda  */
  color: white;
  font-family: 'Oswald', sans-serif, Helvetica, sans-serif;
  text-shadow: 1px 1px #494949;
}


/*Change ul,ol class like this other wise if you have any other list item in your body section will be effected. This is also a example of valid css selctor. */

ul.nav,
.nav li ul {
  list-style: none;
  /* con el "list-style:none" hacemos que no se vean puntos ni otras formas en las listas, de modo que las palabras quedan solas en forma de lista. */
  overflow: hidden;
}

.nav > li {
  float: left;
  /*posicion del menu horizontal*/
}

.nav li a {
  background-color: #494949;
  /*Again in here you don't set # so the color not showing */
  /*Color botones menú sin seleccion*/
  color: #fff;
  text-decoration: none;
  /* quitamos el subrallado */
  padding: 10px 100px 10px 10px;
  /*This is for the left to right menu*/
  /* altura y anchura del menu */
  display: block;
  /*margin: 0px 0px 1px 1px; [This is margin create the gap between every li a tag if you want that gap you can use this.*/
  /* margen arriba , margen dercha, margen abajo, margen izquierda  */
}

.nav li a:hover {
  /* "hover" es cuando tienes el mouse encima*/
  background-color: #6B6B6B;
}

.nav li ul {
  display: none;
  position: absolute;
  /* posicion en cuando se despliega el menu, absolute=se abre y no mueve nada, relative=se desplaza todo objeto que este debajo */
  white-space: nowrap;
  text-align: left;
}

.nav li:hover > ul {
  display: block;
}

.nav li ul li ul {
  right: -140px;
  top: 0px;
}
<!DOCTYPE html>
<html>

<head>
  <title>Practica A3</title>

  <link rel="stylesheet" type="text/css" href="estilo1.css" />

</head>

   <body>
<div id="container">

  <h1 class="center">Hello this is the website</h1>
    <div id="header">
      <nav class="menu-fixed">
        <!-- Iniciamos la etiqueta del menu -->
        <ul class="nav">
          <!-- Inicio TODO -->
          <li><a href="">Inicio</a>
          </li>
          <!-- Principal -->
          <li><a href="">Servicios</a>	
            <!-- Principal -->
            <ul>
              <!-- Inicio secundaria -->
              <li><a href="">Compra de entradas</a>
              </li>
              <!-- Secundaria -->
              <li><a href="">Consulta de conciertos</a>
              </li>
              <!-- Secundaria -->
              <li><a href="">Salas privadas</a>
              </li>
              <!-- Secundaria -->
              <li><a href="">Reserva de mesas</a>
              </li>
              <!-- Secundaria -->
            </ul>
            <!-- Final secundaria -->
          </li>
          <li><a href="">Acerca de</a> 
            <!-- Principal -->
            <ul>
              <!-- Inicio secundaria -->
              <li><a href="">Submenu1</a>
              </li>
              <!-- Secundaria -->
              <li><a href="">Submenu2</a>
              </li>
              <!-- Secundaria -->
              <li><a href="">Submenu3</a>
              </li>
              <!-- Secundaria -->
              <li><a href="">Submenu4</a>
              </li>
              <!-- Secundaria -->
            </ul>
            <!-- Final secundaria -->
          </li>
          <li><a href="">Contacto</a>
          </li>
          <!-- Principal -->
        </ul>
        <!-- Final TODO -->
      </nav>
      <!-- Cerramos el menu con la nav -->
    </div>
    <br>
    <br>
    <br>
    <br>
    <br>


    <p>Este es contenido de la pagina web. Simplemente se trata de un texto laaaaaaargo para ver como se posiciona y que tal quedaria con el resultado final.<br>Esto es todo, gracias por la atencion.</p>

    </div><!--End #Container DIV -->
  </body>
 </html>