2017-09-06 18 views
0

こんにちは、私は中央にロゴの入った水平メニューを持っていますが、インラインになるようなことはできませんが、これまでのところすべてのブラウザでよく見えます。応答性の高いロゴを中心に

レスポンシブルモードでは、常にロゴを上に表示し、ボタンを押してメニューを表示/非表示にします。 レスポンスではロゴが非表示になり、ショーメニューをクリックするとulの中央にロゴのあるメニューが表示されます。

これまでのところ、少し乱雑なコードです。ここでまた

* { 
 
    margin: 0; 
 
    border: 0; 
 
    padding: 0; 
 
} 
 

 
body { 
 

 
    font-family: sans-serif; 
 
    margin: 5px; 
 
    background: #F1F6F8; 
 
} 
 

 
a { 
 

 
    font-weight: bold; 
 
    color: #3F5767; 
 
    text-decoration: none; 
 
} 
 

 
a:hover { 
 
    color: #524C56; 
 
} 
 

 
#wrapper { 
 
    max-width: 980px; 
 
    margin: 0 auto; 
 
} 
 

 
header { 
 
    width: 100%; 
 
    height: 100px; 
 
    top: 0; 
 
    left: 0; 
 
} 
 

 
/* Logo code can go here */ 
 
ul li a.logo { 
 
    background: url(https://i.stack.imgur.com/1dcqW.png) no-repeat center; 
 
    height:76px; 
 
    width:175px; 
 
    display:block; 
 
    padding:5px; 
 
    margin: 0 auto; 
 
} 
 

 

 
nav { 
 
    text-align: center; 
 
} 
 

 
li { 
 
    font-family: sans-serif; 
 
    font-size: 150%; 
 
    display: inline-block; 
 
    padding: 0 10px 0 10px; 
 
} 
 

 
nav ul li a { 
 
    color: #3F5767; 
 
} 
 

 
/* Start controls checkbox change button */ 
 
ul li a:hover + .hidden, .hidden:hover{ /* Maybe remove this */ 
 
     display: block; 
 
     width: auto; 
 
}  
 

 
input[type=checkbox] { 
 
     display: none; 
 
} 
 

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

 
.show-menu{ 
 
     font-family: sans-serif; 
 
     font-weight: bold; 
 
     text-decoration: none; 
 
     color: #3F5767; 
 
     background: #424242; 
 
     text-align: center; 
 
     padding: 3px o; 
 
     display: none; 
 
} 
 

 

 
.thing:before { 
 
     content: "Show Menu"; 
 
} 
 

 
input[type=checkbox]:checked ~ .thing:before { 
 
     content: "Close Menu"; 
 
} 
 

 

 
@media screen and (max-width: 760px) { 
 
     ul{position: static; 
 
     display: none; 
 
} 
 

 
li{ 
 
     margin: 0 auto; 
 
     font-size: 100%; 
 
     padding: 0; 
 
     /*border-bottom: 2px solid #676767;*/ 
 
} 
 

 

 
ul li, li a{ 
 
     width: 100%; 
 
     font-size: 15px; 
 
} 
 
.show-menu{ 
 
     display: block; 
 
     width: auto; 
 
     height: 30px; 
 
     padding: 3px 0 0 0; 
 
} 
 
} 
 
/* End controls checkbox change button */ 
 

 
@media print {#ghostery-purple-box {display:none !important}}
<!DOCTYPE html> 
 
<html lang="en"><head> 
 
<meta http-equiv="content-type" content="text/html; charset=UTF-8"> 
 
     <meta charset="UTF-8"> 
 
     <title>Coast Fm Tasmania</title> 
 
     <meta name="viewport" content="width=device-width, initial-scale=1.0"> 
 
</head> 
 
<body> 
 
<div id="wrapper"> 
 
    <header> 
 
     <nav> 
 

 
     <input id="show-menu" role="button" type="checkbox"> 
 
     <label for="show-menu" class="show-menu thing"> &nbsp </label> 
 

 
     <ul id="menu"> 
 
      <li> 
 
      <a href="index.html" class="current">Home</a></li> 
 
       <li><a href="#">Events</a></li> 
 
       <li><a href="#">On-Air</a></li> 
 
       <li><a href="#">Gallery</a></li> 
 
       <li><a class="logo" href="index.html"></a></li> 
 
       <li><a href="#">Sport</a></li> 
 
       <li><a href="#">The Team</a></li> 
 
       <li><a href="#">Sponsors</a></li> 
 
     </ul> 
 
     </nav> 
 
    </header> 
 

 
</div> 
 
</body> 
 
</html>

あなたはjqueryのを使用して動的に

を希望リストに追加することができます Coast FM

おかげ

答えて

0

divに「隠されたロゴ」となる別のロゴを追加することができます。

<input id="show-menu" role="button" type="checkbox"> 
<div class="hidden"> 
<a class="hidden-logo" href="index.html"></a> 
<label for="show-menu" class="show-menu thing"> &nbsp </label> 
</div> 

次に、いつでも表示して非表示にすることができます。ここで

.hidden { 
    display:flex; 
    justify-content: center; 
    background: #424242; 
    display:none; 
} 
@media screen and (max-width: 760px) { 
    .hidden { 
     display:flex; 
    } 
} 
.hidden-logo { 
    background: url(https://i.stack.imgur.com/1dcqW.png) no-repeat center; 
    height:23px; 
    background-size:50%; 
    width:175px; 
    display:block; 
    padding:5px; 
} 

は一例であり

https://jsfiddle.net/jrdkp7ph/2/

+0

こんにちは、私はあなたがこれをどのようにしているのが大好きです。 ? Safariで反応が見られない –

+0

ねえ、Safari 10.1でテストしたところ、うまく動作します。問題の写真を私に見せてもらえますか? –

+0

こんにちは私はそれが隠すとは思わなかったのが好きですフレックスボックスのコードを少し変更したのでSafariで動作します。対応メニューでロゴが隠されている空白を取り除く方法はありますか? –

0

は、例えば、ここでのコードをチェックしてくださいロゴです:https://jsbin.com/zusunidupo/1/edit?css,js,outputを Neコードブロックの下にウィンドウのサイズ変更(リンクでのみ最初のロード時に実行を提供)

if ($(window).width() < 760) { 
$('<li><a class="logo" href="https://i.stack.imgur.com/1dcqW.png"><img border="0" src="https://i.stack.imgur.com/1dcqW.png" width="50" height="50"></a></li>').insertAfter($('li:eq(4)')) 
} 
else { 
$("#menu").prepend('<li><a class="logo" href="https://i.stack.imgur.com/1dcqW.png"><img border="0" src="https://i.stack.imgur.com/1dcqW.png" width="50" height="50"></a></li>'); 
} 
0

はちょっと私はあなたのhtmlコードの多くの変更がちょうど

* { 
 
    margin: 0; 
 
    border: 0; 
 
    padding: 0; 
 
} 
 

 
body { 
 

 
    font-family: sans-serif; 
 
    margin: 5px; 
 
    background: #F1F6F8; 
 
} 
 

 
a { 
 

 
    font-weight: bold; 
 
    color: #3F5767; 
 
    text-decoration: none; 
 
} 
 

 
a:hover { 
 
    color: #524C56; 
 
} 
 

 
#wrapper { 
 
    max-width: 980px; 
 
    margin: 0 auto; 
 
} 
 

 
header { 
 
    width: 100%; 
 
    height: 100px; 
 
    top: 0; 
 
    left: 0; 
 
} 
 

 
/* Logo code can go here */ 
 
ul li a.logo { 
 
    background: url(https://i.stack.imgur.com/1dcqW.png) no-repeat center; 
 
    height:76px; 
 
    width:175px; 
 
    display:block; 
 
    padding:5px; 
 
    margin: 0 auto; 
 
} 
 

 
.logo { 
 
    background: url(https://i.stack.imgur.com/1dcqW.png) no-repeat center; 
 
    height:76px; 
 
    width:175px; 
 
    display:block; 
 
    padding:5px; 
 
    margin: 0 auto; 
 
} 
 

 
nav { 
 
    text-align: center; 
 
} 
 

 
li { 
 
    font-family: sans-serif; 
 
    font-size: 150%; 
 
    display: inline-block; 
 
    padding: 0 10px 0 10px; 
 
} 
 

 
nav ul li a { 
 
    color: #3F5767; 
 
} 
 

 
/* Start controls checkbox change button */ 
 
ul li a:hover + .hidden, .hidden:hover{ /* Maybe remove this */ 
 
     display: block; 
 
     width: auto; 
 
}  
 

 
input[type=checkbox] { 
 
     display: none; 
 
} 
 

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

 
.show-menu{ 
 
     font-family: sans-serif; 
 
     font-weight: bold; 
 
     text-decoration: none; 
 
     color: #3F5767; 
 
     background: #424242; 
 
     text-align: center; 
 
     padding: 3px o; 
 
     display: none; 
 
} 
 

 

 
.thing:before { 
 
     content: "Show Menu"; 
 
} 
 

 
input[type=checkbox]:checked ~ .thing:before { 
 
     content: "Close Menu"; 
 
} 
 

 

 
@media screen and (max-width: 760px) { 
 
ul{position: static; 
 
     display: none; 
 
} 
 
ul li a.logo { display: none; } 
 

 
li{ 
 
     margin: 0 auto; 
 
     font-size: 100%; 
 
     padding: 0; 
 
     /*border-bottom: 2px solid #676767;*/ 
 
} 
 

 

 
ul li, li a{ 
 
     width: 100%; 
 
     font-size: 15px; 
 
} 
 
.show-menu{ 
 
     display: block; 
 
     width: auto; 
 
     height: 30px; 
 
     padding: 3px 0 0 0; 
 
} 
 
} 
 
/* End controls checkbox change button */ 
 

 
@media print {#ghostery-purple-box {display:none !important}}
<!DOCTYPE html> 
 
<html lang="en"><head> 
 
<meta http-equiv="content-type" content="text/html; charset=UTF-8"> 
 
     <meta charset="UTF-8"> 
 
     <title>Coast Fm Tasmania</title> 
 
     <meta name="viewport" content="width=device-width, initial-scale=1.0"> 
 
</head> 
 
<body> 
 
<div id="wrapper"> 
 
    <header> 
 
     <nav> 
 

 
     <input id="show-menu" role="button" type="checkbox"> 
 
     <label for="show-menu" class="show-menu thing"> <a class="logo" href="index.html"></a> &nbsp </label> 
 
     
 

 
     <ul id="menu"> 
 
      <li> 
 
      <a href="index.html" class="current">Home</a></li> 
 
       <li><a href="#">Events</a></li> 
 
       <li><a href="#">On-Air</a></li> 
 
       <li><a href="#">Gallery</a></li> 
 
       <li><a class="logo" href="index.html"></a></li> 
 
       <li><a href="#">Sport</a></li> 
 
       <li><a href="#">The Team</a></li> 
 
       <li><a href="#">Sponsors</a></li> 
 
     </ul> 
 
     </nav> 
 
    </header> 
 

 
</div> 
 
</body> 
 
</html>

を改善する提案だと思うたびに実行するためのエド
+0

は私が働いていた別のサイトからそれを取ったが、この1にロゴを置くことを決めたとして、それは混乱だった、ありがとうございました。 –