2017-09-24 1 views
0

私は、about、portfolio、およびkontaktという4つのヘッダー要素を持っています。さて、私はバーの25%を使ってnavバー全体にまたがるようにしたいと思います。どうやってやるの? また、家は常に赤色で表示されていると定義しましたが、わかるようにナビゲーションバー自体よりも広いので、これも修正したいと思います。ヘッダー要素が全体のスペースを使用するようにする

コード:

body { 
 
    background-image: linear-gradient(rgba(0, 0, 0, 0.3), rgba(0, 0, 0, 0.3)), url('tape-measure.jpg'); 
 
    background-size: cover; 
 
    height: 1000px; 
 
    color: #000305; 
 
    font-size: 100%; 
 
    font-family: 'Coming Soon', 'Lucida Sans Unicode', cursive; 
 
    line-height: 1.5; 
 
} 
 

 
a { 
 
    text-decoration: none; 
 
} 
 

 
a:link, a:visited { 
 
    color: #CF5C3F; 
 
} 
 

 
a:hover, a:active { 
 
    background-color: #CF5C3F; 
 
    color: #fff; 
 
} 
 

 
.mainHeader { 
 
    width: 90%; 
 
    margin: 0 auto; 
 
} 
 

 

 
.mainHeader img.Logo { 
 
    position: absolute; 
 
    right: 5%; 
 
    top: 54%; 
 
    width: 20%; 
 
    height: auto; 
 
} 
 

 
.mainHeader img.Margrit { 
 
    position: absolute; 
 
    right: 5%; 
 
    top: 25%; 
 
    width: 20%; 
 
    height: auto; 
 
} 
 

 

 
.mainHeader nav { 
 
    width: 100%; 
 
    background-color: #9cb34f; 
 
    height: 20px; 
 
    border-radius: 5px; 
 
    -moz-border-radius: 5px; 
 
    -webkit-border-radius: 5px; 
 
} 
 

 
.mainHeader nav ul { 
 
    list-style: none; 
 
} 
 

 
.mainHeader nav ul li { 
 
    text-align: center; 
 
    display: inline-block; 
 
    
 
} 
 

 

 
.mainHeader nav a:link, .mainHeader nav a:visited { 
 
    color: #fff; 
 
    
 
    
 
} 
 

 
.mainHeader nav a:hover, .mainHeader nav a:active, 
 
.mainHeader nav .active a:link, mainHeader nav .active a:visited { 
 
    background-color: #CF5C3F; 
 
    text-shadow: none; 
 
    
 
} 
 

 

 
.mainHeader nav ul li a { 
 
    border-radius: 5px; 
 
    -moz-border-radius: 5px; 
 
    -webkit-border-radius: 5px; 
 
    
 
    
 
} 
 

 

 
.mainHeader p { 
 
    
 
} 
 

 

 
.mainHeader p.inBearbeitung { 
 
    position: absolute; 
 
    top: 45%; 
 
    left: 5%; 
 
    font-size: 150%; 
 
} 
 

 

 

 
.mainFooter { 
 
    position: absolute; 
 
    bottom: 3%; 
 
    width: 90%; 
 
    left: 5%; 
 
    right: 5%; 
 
    height: 20px; 
 
    border-radius: 5px; 
 
    -moz-border-radius: 5px; 
 
    -webkit-border-radius: 5px; 
 
    background-color: #9cb34f; 
 
\t display: table; 
 

 
} 
 

 

 
.mainFooter p { 
 
    
 
    color: #fff; 
 
    display: table-cell; 
 
    vertical-align: middle; 
 
}
<!DOCTYPE html> 
 
<html lang="de"> 
 
    <head> 
 
\t \t <title>Couture Anni</title> 
 
\t \t <meta charset="utf-8"> 
 
\t \t 
 
     <link rel="stylesheet" type="text/css" href="style.css"> 
 
     <link href="https://fonts.googleapis.com/css?family=Coming+Soon" rel="stylesheet"> 
 
\t \t <meta name="viewport" content="width=device-width, initial-scale=1.0"> 
 
    </head> 
 
    <body> 
 
\t \t <header class="mainHeader"> 
 
\t \t \t <img class="Logo" src="Content_variation_800_e.png" alt="Logo"> 
 
\t \t \t <img class="Margrit" src="IMG_5347_small.jpg" alt="Annamaria Hofstetter"> 
 
\t \t \t 
 
\t \t \t <nav> 
 
\t \t \t \t 
 
\t \t \t \t <ul> 
 
        <li class="active"><a href="#">Home</a></li> 
 
        <li><a href="#">About</a></li> 
 
        <li><a href="#">Portfolio</a></li> 
 
        <li><a href="#">Kontakt</a></li> 
 
       </ul> 
 
\t \t \t \t 
 
\t \t  </nav> 
 
\t \t \t 
 
\t \t \t 
 
\t \t \t <p class="inBearbeitung"><strong>Diese Seite ist in<br>Bearbeitung.<br> Bis demnächst!</strong></p> 
 
\t \t </header> 
 
\t \t 
 
\t \t 
 
     
 
     <footer class="mainFooter"> 
 
    \t \t \t 
 
    \t \t <p>Copyright © <a href="#" title="couture-anni">couture-anni.ch</a></p> 
 
    \t \t \t 
 
\t \t </footer> 
 
     
 
    </body> 
 

 

 
</html>

これは、それが今のように見える方法です:

enter image description here

答えて

1

以下のCSSで以下の変更を行いました。これらをさらに変更して、リンク上で必要なヘッダー幅と配色を設定することができます。

  1. .mainHeaderの幅を100%に変更しました。

    .mainHeader { width: 100%; margin: 0 auto; }

  2. 23%まで幅が変更されました。 @Gabrielの回答でも示唆されているように、この22%または23%は、マージンまたはパディングがこれらのリンクに適用されるために発生します。したがって、幅25%で次の行に移動します。

    .mainHeader nav ul li { text-align: center; display: inline-block; width:23%; }

  3. はアクティブリンク上のデフォルト赤いボックスの表示を削除するコードスニペット

    .mainHeader nav a:hover, .mainHeader nav a:active, 
    .mainHeader nav .active a:link, mainHeader nav .active a:visited 
    { 
        background-color: #CF5C3F; 
        text-shadow: none; 
    } 
    

下に変更します。

.mainHeader nav a:hover, mainHeader nav .active a:visited { 
    background-color: #CF5C3F; 
    text-shadow: none; 
} 

EDIT:一緒中心にすべての4つの要素を作成するには、あなたがこれを行う必要があります。

.mainHeader nav ul { 
    list-style: none;text-align: center; 
} 

.mainHeader nav ul li { 

    display: inline-block; 
    width:12%; 
} 

body { 
 
    background-image: linear-gradient(rgba(0, 0, 0, 0.3), rgba(0, 0, 0, 0.3)), url('tape-measure.jpg'); 
 
    background-size: cover; 
 
    height: 1000px; 
 
    color: #000305; 
 
    font-size: 100%; 
 
    font-family: 'Coming Soon', 'Lucida Sans Unicode', cursive; 
 
    line-height: 1.5; 
 
} 
 

 
a { 
 
    text-decoration: none; 
 
} 
 

 
a:link, a:visited { 
 
    color: #CF5C3F; 
 
} 
 

 
a:hover, a:active { 
 
    background-color: #CF5C3F; 
 
    color: #fff; 
 
} 
 

 
.mainHeader { 
 
    width: 100%; 
 
    margin: 0 auto; 
 
} 
 

 

 
.mainHeader img.Logo { 
 
    position: absolute; 
 
    right: 5%; 
 
    top: 54%; 
 
    width: 20%; 
 
    height: auto; 
 
} 
 

 
.mainHeader img.Margrit { 
 
    position: absolute; 
 
    right: 5%; 
 
    top: 25%; 
 
    width: 20%; 
 
    height: auto; 
 
} 
 

 

 
.mainHeader nav { 
 
    width: 100%; 
 
    background-color: #9cb34f; 
 
    height: 20px; 
 
    border-radius: 5px; 
 
    -moz-border-radius: 5px; 
 
    -webkit-border-radius: 5px; 
 
} 
 

 
.mainHeader nav ul { 
 
    list-style: none; 
 
} 
 

 
.mainHeader nav ul li { 
 
    text-align: center; 
 
    display: inline-block; 
 
    border:1px solid red; 
 
    width:23%; 
 
} 
 

 

 
.mainHeader nav a:link, .mainHeader nav a:visited { 
 
    color: #fff; 
 
    
 
    
 
} 
 

 
.mainHeader nav a:hover, mainHeader nav .active a:visited { 
 
    background-color: #CF5C3F; 
 
    text-shadow: none; 
 
    
 
} 
 

 

 
.mainHeader nav ul li a { 
 
    border-radius: 5px; 
 
    -moz-border-radius: 5px; 
 
    -webkit-border-radius: 5px; 
 
    
 
    
 
} 
 

 

 
.mainHeader p { 
 
    
 
} 
 

 

 
.mainHeader p.inBearbeitung { 
 
    position: absolute; 
 
    top: 45%; 
 
    left: 5%; 
 
    font-size: 150%; 
 
} 
 

 

 

 
.mainFooter { 
 
    position: absolute; 
 
    bottom: 3%; 
 
    width: 90%; 
 
    left: 5%; 
 
    right: 5%; 
 
    height: 20px; 
 
    border-radius: 5px; 
 
    -moz-border-radius: 5px; 
 
    -webkit-border-radius: 5px; 
 
    background-color: #9cb34f; 
 
\t display: table; 
 

 
} 
 

 

 
.mainFooter p { 
 
    
 
    color: #fff; 
 
    display: table-cell; 
 
    vertical-align: middle; 
 
}
<!DOCTYPE html> 
 
<html lang="de"> 
 
    <head> 
 
\t \t <title>Couture Anni</title> 
 
\t \t <meta charset="utf-8"> 
 
\t \t 
 
     <link rel="stylesheet" type="text/css" href="style.css"> 
 
     <link href="https://fonts.googleapis.com/css?family=Coming+Soon" rel="stylesheet"> 
 
\t \t <meta name="viewport" content="width=device-width, initial-scale=1.0"> 
 
    </head> 
 
    <body> 
 
\t \t <header class="mainHeader"> 
 
\t \t \t <img class="Logo" src="Content_variation_800_e.png" alt="Logo"> 
 
\t \t \t <img class="Margrit" src="IMG_5347_small.jpg" alt="Annamaria Hofstetter"> 
 
\t \t \t 
 
\t \t \t <nav> 
 
\t \t \t \t 
 
\t \t \t \t <ul> 
 
        <li class="active"><a href="#">Home</a></li> 
 
        <li><a href="#">About</a></li> 
 
        <li><a href="#">Portfolio</a></li> 
 
        <li><a href="#">Kontakt</a></li> 
 
       </ul> 
 
\t \t \t \t 
 
\t \t  </nav> 
 
\t \t \t 
 
\t \t \t 
 
\t \t \t <p class="inBearbeitung"><strong>Diese Seite ist in<br>Bearbeitung.<br> Bis demnächst!</strong></p> 
 
\t \t </header> 
 
\t \t 
 
\t \t 
 
     
 
     <footer class="mainFooter"> 
 
    \t \t \t 
 
    \t \t <p>Copyright © <a href="#" title="couture-anni">couture-anni.ch</a></p> 
 
    \t \t \t 
 
\t \t </footer> 
 
     
 
    </body> 
 

 

 
</html>

enter image description here

+0

ありがとうございました!しかし私のために、4つの要素またはナビゲーション要素は中心に置かれていません – Paludis

+0

4つの要素すべてを一緒にセンタリングしますか? – Amit

+0

私はすべての4つのタイトルをナビゲーションバーのそれぞれの25%のセグメントの中央に揃えたいと思っています – Paludis

1

これは正しい方向にあなたをポイントします:

.mainHeader nav ul li { 
    width: 25%; 
} 

.mainHeader nav ul li a { 
    display: block; 
} 

注:メニュー項目間の間隔を調整するか、すべてが同じ行になるように22%の割合を設定する必要があります。

希望すると便利です。

関連する問題