2011-09-09 12 views
1
<style> 
*{ 
    margin:0; 
    padding:0; 
    border:0; 
} 

#navlist{ 
    display:block; 
    width: 100%; 
    float: left; 
    list-style: none; 
    background-color: #f2f2f2; 
    border-bottom: 5px solid #ccc; 
    border-top: 5px solid #ccc; 
} 

#navlist li{ 
    float: left; 
} 

#navlist li a{ 
    display: block; 
    padding: 8px 15px; 
    text-decoration: none; 
    font-weight: bold; 
    color: #069; 
    border-right: 5px solid #ccc; 
} 

#navlist li a:hover{ 
    color:#c00; 
    background-color:#fff; 
} 

#navlist a#current{ 
    color:#c00; 
} 



/*SEARCH*/ 

#navlist li input{ 
    display: block; 
    padding: 8px 15px; 
    text-decoration: none; 
    font-weight: bold; 
    color: #069; 
    background-color: #f2f2f2; 
    border-right: 5px solid #ccc; 
} 

#navlist li input:hover{ 
    color: #c00; 
    background-color:#fff; 
} 

#navlist li input #searchbar{ 
} 
</style> 
</head> 

<body> 
      <div> 
       <ul id="navlist"> 
        <li><a href="index.html" id="current" title="">Home</a></li> 
        <li><a href="" title="">Page 1</a></li> 
        <li><a href="" title="">Page 2</a></li> 
        <li><a href="" title="">Page 3</a></li> 
        <li><a href="" title="">Page 4</a></li> 
        <form action="search.asp"> 
         <li><input id="searchbar" type="text" name="searchbar" size="15" value="INSERT SEARCH"/></li> 
         <li><input class="searchbut" type="submit" value="Search"/></li> 
        </form> 
       </ul> 
      </div> 

</body> 

これは、検索バーを備えた水平ナビゲーションバーです。私の質問は2倍です。どのようにして水平ナビゲーションのためにheight:30px;のような高さを指定し、各リンクと入力フィールドの上部と下部のパディングが指定されたコンテナの高さに正確に合うようにすることができますか?私はpadding:100% 10px;a{input{の下で使ってみましたが、うまくいきませんでした。次に、入力クラスを個別に変更するためにセレクタをどのように入力しますか(例:#navlist li input #searchbar{ size:15; })?CSS水平方向のナビゲーションバーの質問

答えて

1

垂直パディングの代わりに、リンクを作成しないでください。height: 30px;line-height: 30px;次に、行の高さを高さと同じにすると、テキストは常に垂直方向にセンタリングされるため、パディングを正確に合わせることについて心配する必要はありません。

+0

「height:30px;」と言う必要はない - 単にアンカーに行の高さを加えると、navの高さが広がります。 – Nightfirecat

+0

私はリンクを使っていたのですが、5つのリンクと2つの入力フィールドがあります。 2つの入力フィールドは異なるサイズの尺度になっているため、右側の罫線が小さすぎるか大きすぎます。リンクを作成して入力を同じ高さにしようとすると、下の罫線に触れません。 – Aaron

+0

[http://jsfiddle.net/cxK4y/](http://jsfiddle.net/cxK4y/) – Will

0

Fiddle

これは?あなたが必要とするものを正確には分からない。私に知らせて、私がチャンスを得たときに私は更新します。

関連する問題