Jedyne co mogę myśleć o to, że skoro pojemniki Bootstrap reagują przez naturę, są one automatycznie zamiar zmienić rozmiar <input>
zależności od aktualnej wielkości okna przeglądarki. Spójrz na tej struktury:
<div class="container">
<div class="row">
<div class="col-xs-12">
<input type="text" class="form-control" value="I am a very, very, very, very, very, very long option. I'm going to extend off the screen."/>
</div>
</div>
<div class="row">
<div class="col-xs-12">
<select class="form-control">
<option value="1">I am a very, very, very, very, very, very long option. I'm going to extend off the screen.</option>
</select>
</div>
</div>
</div>
W tym przykładzie, jeśli zmiana rozmiaru okna mniejsze, szerokość <input>
i <select>
dostosuje się do wielkości pojemnika To w <div class="col-xs-12">
. Aby temu zapobiec, potrzebowalibyśmy użyć wejść o stałej szerokości, co w pewnym sensie jest przeciwne użyciu responsywnego framewru takiego jak Bootstrap, ale widzę potrzebę w niektórych sytuacjach.
Niektóre sugestie do rozważenia:
- Czy to możliwe, aby mieć mniejsze etykiety opcja?
- Czy Twój
<select>
jest w pojemniku o maksymalnej szerokości?
- Czy jest możliwe skorzystanie z opcji
<modal>
w celu wybrania opcji, jeśli nie ma miejsca?
A jeśli wszystko inne zawiedzie, zawsze można utworzyć klasę niestandardową <div class="col-xs-12 fixed">
i ustawić szerokość na coś statycznego, albo wartość bazową lub, jak zasugerował przy użyciu JQuery, aby znaleźć max-width najdłuższego wartości opcji.
Nadzieję, że pomaga!
Czy możesz dołączyć odpowiedni kod, którego używasz do zmiany rozmiaru okna wyboru? – MattD
Nie zmieniam rozmiaru okna wyboru ... Zmieniam rozmiar okna przeglądarki ... –
@ZackMacomber Możesz spróbować dodać "przepełnienie: auto" do swojego elementu select. Może nie dostarczyć pożądanego rozwiązania końcowego, ale zadziałało w moim teście. (Chrome) – Riley