Input widths on Bootstrap 3

What you want to do is certainly achievable.

What you want is to wrap each ‘group’ in a row, not the whole form with just one row. Here:

<div class="container">
    <h1>My form</h1>
    <p>How to make these input fields small and retain the layout.</p>
    <form role="form">
        <div class="row">
            <div class="form-group col-lg-1">
                <label for="code">Name</label>
                <input type="text" class="form-control" />
            </div>
        </div>

        <div class="row">
            <div class="form-group col-lg-1 ">
                <label for="code">Email</label>
                <input type="text" class="form-control input-normal" />
            </div>
        </div>
        <div class="row">
            <button type="submit" class="btn btn-default">Submit</button>
        </div>
    </form>
</div>

The NEW jsfiddle I made:
NEW jsfiddle

Note that in the new fiddle, I’ve also added ‘col-xs-5’ so you can see it in smaller screens too – removing them makes no difference. But keep in mind in your original classes, you are only using ‘col-lg-1’. That means if the screen width is smaller than the ‘lg’ media query size, then the default block behaviour is used. Basically by only applying ‘col-lg-1’, the logic you’re employing is:

IF SCREEN WIDTH < 'lg' (1200px by default)

   USE DEFAULT BLOCK BEHAVIOUR (width=100%)

ELSE

   APPLY 'col-lg-1' (~95px)

See Bootstrap 3 grid system for more info. I hope I was clear otherwise let me know and I’d elaborate.

Leave a Comment