#input_username_total,
#input_password_total {
overflow: hidden;
display: block;
width: 80%;
margin-top: 2%;
display: table;
}
#input_username,
#input_password {
background: url('../img/blank_input_login.png');
background-repeat: no-repeat;
background-size: 100% 100%;
margin-left: -2px;
display: table-cell;
}
#input_img {
width: 16%;
display: table-cell;
}
#pic_username,
#pic_password {
width: 100%;
}
#form_input_username,
#form_input_password {
font-size: 5.5vw;
font-family: 'Open Sans', sans-serif;
border: none;
color: white;
background: transparent;
padding-left: 4%;
padding-right: 2%;
padding-top: 0px;
padding-bottom: 0px;
height: 100%;
width: 94%;
}
<div id="input_username_total" class="center">
<div id="input_img">
<img src="img/username_pic.png" id="pic_username"></img>
</div>
<div id="input_username">
<input type="text" id="form_input_username" placeholder="Username" />
</div>
</div>
答案 0 :(得分:1)
您使用display: table-cell
并排设置元素。
如果您想要“居中”文字输入,请参阅vertical-align
#input_username, #input_password {vertical-align: middle}
http://jsfiddle.net/11z1rbs7/1/
但我认为更好的解决方案是使用float: left;
代替display: table-cell
,元素将以另一种方式对齐,我认为您的问题会更少。
答案 1 :(得分:1)
您只需将vertical-align
添加到包含div中,如下所示:
#input_username_total,
#input_password_total {
overflow: hidden;
display: block;
width: 80%;
margin-top: 2%;
display: table;
}
#input_username,
#input_password {
background: url('../img/blank_input_login.png');
background-repeat: no-repeat;
background-size: 100% 100%;
margin-left: -2px;
display: table-cell;
vertical-align: middle;
}
#input_img {
width: 16%;
display: table-cell;
}
#pic_username,
#pic_password {
width: 100%;
}
#form_input_username,
#form_input_password {
font-size: 5.5vw;
font-family: 'Open Sans', sans-serif;
border: none;
color: white;
background: transparent;
padding-left: 4%;
padding-right: 2%;
padding-top: 0px;
padding-bottom: 0px;
height: 100%;
width: 94%;
}
<div id="input_username_total" class="center">
<div id="input_img">
<img src="img/username_pic.png" id="pic_username"></img>
</div>
<div id="input_username">
<input type="text" id="form_input_username" placeholder="Username" />
</div>
</div>
然后将所有内容与中间对齐,从而使所有内容保持一致。
答案 2 :(得分:0)
请点击jsfiddle链接,正如NoLiver92指出的那样,你有一些影响它的余量。
我刚刚删除了保证金,新的css是:
#input_username_total, #input_password_total {
overflow: hidden;
display: block;
width: 80%;
display: table;
}
#input_username, #input_password {
background: url('../img/blank_input_login.png');
background-repeat: no-repeat;
background-size: 100% 100%;
margin-left: -2px;
display: table-cell;
}
#input_img {
width: 16%;
display: table-cell;
}
#pic_username, #pic_password {
width: 100%;
}
#form_input_username, #form_input_password {
font-size: 5.5vw;
font-family: 'Open Sans', sans-serif;
border: none;
color: white;
background: transparent;
padding-left: 4%;
padding-right: 2%;
padding-top: 0px;
padding-bottom: 0px;
height: 100%;
width: 94%;
}