JSFiddle - React, Tailwind, and code Playground

HTML

<link rel="stylesheet" href="//netdna.bootstrapcdn.com/twitter-bootstrap/2.3.2/css/bootstrap-combined.no-icons.min.css">
<link rel="stylesheet" href="http://netdna.bootstrapcdn.com/font-awesome/3.2.1/css/font-awesome.min.css">
<div class='container'>
    <div class='row'>
        <div class='offset2 span6 loginContainer'>
            <div class='row'>
                <div class='login-icon'>
                    <div class='centerWrapper'>
                        <div class='center'> <i class='icon-user'></i>

                        </div>
                    </div>
                </div>
                <input type="text" placeholder="Email" />
            </div>
            <div class='row'>
                 <div class='login-icon'>
                    <div class='centerWrapper'>
                        <div class='center'> <i class=" icon-lock "></i></div>
                     </div>
                </div>
                <span>asdasd</span> 
            </div>
        </div>
    </div>
</div>

CSS

body {
    background: grey;
}
.login-icon {
    display:inline-block;
    font-size: 40px;
    line-height: 40px;
    background-color:black;
    color:white;
    width: 50px;
    height: 50px;
}
.login-icon[class*='icon-'] {
    height: 50px;
    width: 50px;
    display: inline-block;
    text-align: center;
    vertical-align: middle;
}
.centerWrapper:before {
    content:'';
    height: 100%;
    display: inline-block;
    vertical-align: middle;
}

.center {
    display:inline-block;
    vertical-align: middle;
}
.loginContainer {
    opacity: .8;
    background-color: #C0C0C0;
}
.loginContainer .row {
    background:white;
    margin-bottom: 5px;
    margin: 10px;
}