2016-08-15 19 views
0

Hellow。全画面の全幅ナビゲーションメニュー

私はHTML5とCSSで反応性メニューを作成しています。これを行うために、私はデスクトップコンピュータのナビゲーションメニューを作成し、応答メニュー(私はショーメニュー)を表示するためにラベール付きチェックボックスを使用します。

これはコードである:

コード注:(画像は、x 100pxにheigth 350px幅):

body { 
 
    margin: 0px; 
 
} 
 
/*Strip the ul of padding and list styling*/ 
 

 
ul { 
 
    list-style-type: none; 
 
    margin: 0; 
 
    padding: 0; 
 
    position: absolute; 
 
} 
 
/*Hacer que la imagen no se mueva */ 
 

 
#img-nav { 
 
    padding-top: 0px !important; 
 
} 
 
/*Create a horizontal list*/ 
 

 
li { 
 
    display: inline-block; 
 
    float: left; 
 
} 
 
/*Style for menu links*/ 
 

 
li a { 
 
    display: block; 
 
    min-width: 200px; 
 
    height: 70px; 
 
    text-align: center; 
 
    line-height: 50px; 
 
    font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; 
 
    color: #fff; 
 
    background: #2f3036; 
 
    text-decoration: none; 
 
    padding-top: 30px; 
 
} 
 
/*Hover state for top level links*/ 
 

 
li:hover a { 
 
    background: #19c589; 
 
} 
 
/*Style for dropdown links*/ 
 

 
li:hover ul a { 
 
    background: #f3f3f3; 
 
    color: #2f3036; 
 
    height: 40px; 
 
    line-height: 40px; 
 
} 
 
/*Hover state for dropdown links*/ 
 

 
li:hover ul a:hover { 
 
    background: #19c589; 
 
    color: #fff; 
 
} 
 
/*Hide dropdown links until they are needed*/ 
 

 
li ul { 
 
    display: none; 
 
} 
 
/*Make dropdown links vertical*/ 
 

 
li ul li { 
 
    display: block; 
 
    float: none; 
 
} 
 
/*Prevent text wrapping*/ 
 

 
li ul li a { 
 
    width: auto; 
 
    min-width: 100px; 
 
    padding: 0 20px; 
 
} 
 
/*Display the dropdown on hover*/ 
 

 
ul li a:hover + .hidden, 
 
.hidden:hover { 
 
    display: block; 
 
} 
 
/*Style 'show menu' label button and hide it by default*/ 
 

 
.show-menu { 
 
    font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; 
 
    text-decoration: none; 
 
    color: #fff; 
 
    background: #19c589; 
 
    text-align: center; 
 
    padding: 10px 0; 
 
    display: none; 
 
} 
 
/*Hide checkbox*/ 
 

 
input[type=checkbox] { 
 
    display: none; 
 
} 
 
/*Show menu when invisible checkbox is checked*/ 
 

 
input[type=checkbox]:checked ~ #menu { 
 
    display: block; 
 
} 
 
/*Responsive Styles*/ 
 

 
@media screen and (max-width: 760px) { 
 
    /*Make dropdown links appear inline*/ 
 
    ul { 
 
    position: static; 
 
    display: none; 
 
    } 
 
    /*Create vertical spacing*/ 
 
    li { 
 
    margin-bottom: 1px; 
 
    } 
 
    /*Make all menu links full width*/ 
 
    ul li, 
 
    li a { 
 
    width: 100%; 
 
    } 
 
    /*Display 'show menu' link*/ 
 
    .show-menu { 
 
    display: block; 
 
    } 
 
    #img-nav { 
 
    display: none; 
 
    } 
 
}
<!doctype html> 
 
<html lang="en"> 
 

 
<head> 
 
    <meta charset="UTF-8"> 
 
    <title>CSS Only Navigation Menu</title> 
 
    <meta name="viewport" content="width=device-width, initial-scale=1"> 
 
    <link rel="stylesheet" href="css/home.css"> 
 
</head> 
 

 
<body> 
 
    <nav> 
 
    <label for="show-menu" class="show-menu">Show Menu</label> 
 
    <input type="checkbox" id="show-menu" role="button"> 
 
    <ul id="menu"> 
 
     <li> 
 
     <a href="#" id="img-nav"> 
 
      <img src="images/nav/logoplacehold.png" alt=""> 
 
     </a> 
 
     </li> 
 
     <li><a href="#">Inicio</a> 
 
     </li> 
 
     <li> 
 
     <a href="#">Aula Virtual</a> 
 
     <ul class="hidden"> 
 
      <li><a href="#">Test Online</a> 
 
      </li> 
 
      <li><a href="#">Test DGT</a> 
 
      </li> 
 
     </ul> 
 
     </li> 
 
     <li><a href="#">Resultado Teórico</a> 
 
     </li> 
 
     <li><a href="#">Nuestros Vehículos</a> 
 
     </li> 
 
     <li><a href="#">Permisos</a> 
 
     </li> 
 
    </ul> 
 
    </nav> 
 
</body> 
 

 
</html>

問題:

全幅メニューを持っていたい(PCで)しかし、私はそれを行う方法がわかりません。

ありがとうございました!

答えて

1

Woops!混乱した。 HTMLのdiv内のulを囲みます。 divのz-indexを0より大きく、固定し、幅を100%に設定します。

+0

こんにちは。答えをありがとうが、それは私のために動作しませんでした。 –

0

タグからバックグラウンドを削除してulタグに置き、cssをwidth:100%に追加します。これは私の上でうまく動作します。

body { 
 
    margin: 0px; 
 
} 
 
/*Strip the ul of padding and list styling*/ 
 

 
ul { 
 
    list-style-type: none; 
 
    margin: 0; 
 
    padding: 0; 
 
    position: absolute; 
 
    width:100%; 
 
    background: #2f3036; 
 
} 
 
/*Hacer que la imagen no se mueva */ 
 

 
#img-nav { 
 
    padding-top: 0px !important; 
 
} 
 
/*Create a horizontal list*/ 
 

 
li { 
 
    display: inline-block; 
 
    float: left; 
 
} 
 
/*Style for menu links*/ 
 

 
li a { 
 
    display: block; 
 
    min-width: 200px; 
 
    height: 70px; 
 
    text-align: center; 
 
    line-height: 50px; 
 
    font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; 
 
    color: #fff; 
 
    
 
    text-decoration: none; 
 
    padding-top: 30px; 
 
} 
 
/*Hover state for top level links*/ 
 

 
li:hover a { 
 
    background: #19c589; 
 
} 
 
/*Style for dropdown links*/ 
 

 
li:hover ul a { 
 
    background: #f3f3f3; 
 
    color: #2f3036; 
 
    height: 40px; 
 
    line-height: 40px; 
 
} 
 
/*Hover state for dropdown links*/ 
 

 
li:hover ul a:hover { 
 
    background: #19c589; 
 
    color: #fff; 
 
} 
 
/*Hide dropdown links until they are needed*/ 
 

 
li ul { 
 
    display: none; 
 
} 
 
/*Make dropdown links vertical*/ 
 

 
li ul li { 
 
    display: block; 
 
    float: none; 
 
} 
 
/*Prevent text wrapping*/ 
 

 
li ul li a { 
 
    width: auto; 
 
    min-width: 100px; 
 
    padding: 0 20px; 
 
} 
 
/*Display the dropdown on hover*/ 
 

 
ul li a:hover + .hidden, 
 
.hidden:hover { 
 
    display: block; 
 
} 
 
/*Style 'show menu' label button and hide it by default*/ 
 

 
.show-menu { 
 
    font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; 
 
    text-decoration: none; 
 
    color: #fff; 
 
    background: #19c589; 
 
    text-align: center; 
 
    padding: 10px 0; 
 
    display: none; 
 
} 
 
/*Hide checkbox*/ 
 

 
input[type=checkbox] { 
 
    display: none; 
 
} 
 
/*Show menu when invisible checkbox is checked*/ 
 

 
input[type=checkbox]:checked ~ #menu { 
 
    display: block; 
 
} 
 
/*Responsive Styles*/ 
 

 
@media screen and (max-width: 760px) { 
 
    /*Make dropdown links appear inline*/ 
 
    ul { 
 
    position: static; 
 
    display: none; 
 
background: #2f3036; 
 
    } 
 
    /*Create vertical spacing*/ 
 
    li { 
 
    margin-bottom: 1px; 
 
    } 
 
    /*Make all menu links full width*/ 
 
    ul li, 
 
    li a { 
 
    width: 100%; 
 
    background: #2f3036; 
 
    } 
 
    /*Display 'show menu' link*/ 
 
    .show-menu { 
 
    display: block; 
 
    } 
 
    #img-nav { 
 
    display: none; 
 
    } 
 
}
<!doctype html> 
 
<html lang="en"> 
 

 
<head> 
 
    <meta charset="UTF-8"> 
 
    <title>CSS Only Navigation Menu</title> 
 
    <meta name="viewport" content="width=device-width, initial-scale=1"> 
 
    <link rel="stylesheet" href="css/home.css"> 
 
</head> 
 

 
<body> 
 
    <nav> 
 
    <label for="show-menu" class="show-menu">Show Menu</label> 
 
    <input type="checkbox" id="show-menu" role="button"> 
 
    <ul id="menu"> 
 
     <li> 
 
     <a href="#" id="img-nav"> 
 
      <img src="images/nav/logoplacehold.png" alt=""> 
 
     </a> 
 
     </li> 
 
     <li><a href="#">Inicio</a> 
 
     </li> 
 
     <li> 
 
     <a href="#">Aula Virtual</a> 
 
     <ul class="hidden"> 
 
      <li><a href="#">Test Online</a> 
 
      </li> 
 
      <li><a href="#">Test DGT</a> 
 
      </li> 
 
     </ul> 
 
     </li> 
 
     <li><a href="#">Resultado Teórico</a> 
 
     </li> 
 
     <li><a href="#">Nuestros Vehículos</a> 
 
     </li> 
 
     <li><a href="#">Permisos</a> 
 
     </li> 
 
    </ul> 
 
    </nav> 
 
</body> 
 

 
</html>

+0

**ありがとうございます**、このメソッドは私のために働いた。 –

+0

あなたは私の答えを確認できますか? –