Ich habe Probleme, ein Textfeld zu erstellen, das über die gesamte Breite meines Containerbereichs passt .
<div class="row">
<div class="col-md-12">
<form class="form-inline" role="form">
<input type="text" class="form-control input-lg" id="search-church" placeholder="Your location (City, State, ZIP)">
<button type="submit" class="btn btn-lg">Search</button>
</form>
</div>
</div>
Wenn ich das oben genannte mache, sind die beiden Formularelemente wie erwartet in einer Linie, nehmen aber bestenfalls nicht mehr als ein paar Spalten ein. Wenn Sie col-md-12
im Firebug über dem Div schweben, wird angezeigt, dass es die erwartete volle Breite einnimmt. Es ist nur die Texteingabe, die nicht zu füllen scheint. Ich habe sogar versucht, einen Inline-Breitenwert hinzuzufügen, aber er hat nichts geändert. Ich weiß, das sollte einfach sein und mich jetzt wirklich dumm fühlen.
Hier ist eine Geige: http://jsfiddle.net/52VtD/4119/embedded/result/
BEARBEITEN:
Die ausgewählte Antwort ist in jeder Hinsicht gründlich und eine wunderbare Hilfe. Es ist das, was ich letztendlich benutzt habe. Ich denke jedoch, dass mein anfängliches Problem tatsächlich ein Problem mit der Standard-MVC5-Vorlage in Visual Studio 2013 war. Sie enthielt Folgendes in Site.css:
input,
select,
textarea {
max-width: 280px;
}
Offensichtlich verhinderte dies, dass die Texteingabe angemessen erweitert wurde ... Faire Warnung an zukünftige Benutzer von ASP.NET-Vorlagen ...
quelle
Antworten:
In den Bootstrap-Dokumenten heißt es dazu :
Die Standardbreite von 100%, die alle Formularelemente erhalten, wenn sie die Klasse erhalten
form-control
haben, wurde nicht angewendet, wenn Sie die verwendenform-inline
Klasse in Ihrem Formular verwenden.Sie können sich die Datei bootstrap.css (oder .less, was auch immer Sie bevorzugen) ansehen, in der Sie diesen Teil finden:
Vielleicht sollten Sie einen Blick auf nehmen Input-Gruppen , da ich denke , sie haben genau das Markup die Sie verwenden möchten (Arbeits Geige hier ):
quelle
Schauen Sie sich so etwas an:
http://jsfiddle.net/n6c7v/1/
quelle
Versuchen Sie, wie in einer ähnlichen Frage angegeben , Instanzen der
input-group
Klasse zu entfernen, und prüfen Sie, ob dies hilfreich ist.unter Bezugnahme auf Bootstrap:
quelle
quelle
Bei Bootstrap> 4.1 müssen nur die Flexbox-Dienstprogrammklassen verwendet werden. Stellen Sie einfach einen Flexbox-Container in Ihre Spalte und geben Sie dann allen darin enthaltenen Elementen die Klasse "Flex-Fill". Wie bei Inline-Formularen müssen Sie die Ränder / Auffüllungen für die Elemente selbst festlegen.
quelle