2017-03-10 7 views
0

ich eine Suchleiste in einem div positionieren will, so dass es so etwas wie folgt aussieht:Position Suchleiste auf der rechten Seite von div und zentrierte

Im Moment ist es nicht einmal innerhalb des div sitzen.

enter image description here

HTML:

.sb-search { 
 
    float: right; 
 
    overflow: hidden; 
 
} 
 

 
.sb-search-input { 
 
    border: none; 
 
    outline: none; 
 
    background: #fff; 
 
    width: 100%; 
 
    height: 60px; 
 
    margin: 0; 
 
    z-index: 10; 
 
    padding: 20px 65px 20px 20px; 
 
    font-family: inherit; 
 
    font-size: 20px; 
 
    color: #2c3e50; 
 
}
<div class="searchbar" style="position: relative;"> 
 
    <h1>Welcome Solictior...</h1> 
 
    <div id="sb-search" class="sb-search"> 
 
    <form> 
 
     <input class="sb-search-input" placeholder="Search..." type="text" value="" name="search" id="search" /> 
 
     <input class="sb-search-submit" type="submit" value="" /> 
 
     <span class="sb-icon-search"></span> 
 
    </form> 
 
    </div> 
 
</div>

+1

'Flexbox' kann helfen. –

+0

Bitte liefern Sie einen Arbeits-Plunker. –

Antwort

1

Es ist sehr einfach, mit Flexbox

.searchbar { 
    background-color: #8BCAC7; 
    display: flex; 
    justify-content: space-between; 
    align-items: center; 
} 

https://jsfiddle.net/cb3fu9wj/

zu tun

gibt die Ausrichtung entlang der Hauptachse an. Es definiert, wie der freie Speicherplatz zwischen Elementen verteilt wird.

align-items gibt die Ausrichtung entlang der Querachse an.

Hier ist die complete guide.

+0

Gern geschehen! – Greg

+0

Ich habe es ausprobiert und lese gerade den flexbox Guide, und das Suchfeld ist dort positioniert, wo ich es haben möchte, aber es zeigt sich wie das [Bild, das ich hier verlinkt habe] (http://imgur.com/a/RbOEa) Das Suchfeld scheint sich über die gesamte Breite des div zu erstrecken. –

+0

könnten Sie bitte Ihren aktuellen Code zeigen? – Greg

2

Ich denke, Ihr Problem ist hier die h1 wie es ein Block-Level-Element ist.

Fügen Sie dies Ihrem h1 CSS hinzu und es sollte die Suchleiste rechts davon gehen lassen. Auch

h1 { 
    display: inline-block; 
} 

die float: right; auf Ihrem .sb-search Element halten.

1

Hier ist ein mögliches Beispiel von dem, was Sie suchen: See this fiddle

CSS:

.searchbar { background-color: teal; color: #fff; overflow: hidden; padding: 0 10px;} 
.searchbar .sb-search { float: right; margin: 5px 0; } 
.searchbar h1 { float: left; font-size: 14px; margin: 10px 0 5px; } 
+0

Vielen Dank sir, sorry, ich bin sehr ein Neuling –

+0

Gern geschehen, froh, dass es hilft! –

Verwandte Themen