问题:
我想垂直居中输入字段左侧的文本。另外,我想将日历图标居中。
HTML:
<div id="dateselect">
<div id="arrivalContainer">
<span class="annotation">Anreise</span>
<input type="text" name="arrival" id="arrival" class="input-styling" maxlength="10" size="10" />
</div>
<div id="departureContainer">
<span class="annotation">Abreise</span>
<input type="text" name="departure" id="departure" class="input-styling" maxlength="10" size="10" />
</div>
<div class="clearer"></div>
</div>
CSS:
#dateselect {
padding-top: 14px;
}
#arrivalContainer {
float: left;
width: 160px;
}
#departureContainer {
float: right;
width: 160px;
}
#arrival {
height: 25px;
width: 68px;
}
#departure {
height: 25px;
width: 68px;
}
.ui-datepicker-trigger {
position: relative;
top: 7px;
left: 3px;
}
.input-styling {
color: #575756;
font-family: "Myriad Roman", Helvetica, Arial, sans-serif;
font-size: 12px;
padding-left: 4px;
}
直播示例:
http://bfb.bplaced.net/
我认为span
元素应为display: inline-block;
。我尝试使用line-height
和display: table-cell;
方法。除了IE7和IE8之外,我在所有浏览器中都可以使用它。
我知道这是一个经常出现的问题,但也许你可以给我一些建议。
HTML:
我用valign="middle"
尝试过,但IE8仍有问题。我最终得到了这个:
<div id="arrivalContainer">
<div class="calendarText"><span class="annotation">Anreise</span></div>
<div class="calendarInput"><input type="text" name="arrival" id="arrival" class="input-styling" maxlength="10" size="10" /></div>
<div class="clearer"></div>
</div>
CSS:
.calendarText {
float:left;
padding-top:14px;
padding-right:5px;
}
.calendarInput {
float: left;
}
对于所有IE版本,我都有条件样式表。
答案 0 :(得分:1)
对您的图片和文字div尝试vertical-align:middle;
。
答案 1 :(得分:0)
这应该垂直居中文本,强制它以25像素高显示(与输入字段相同)。然后,线高也垂直居中,高度为25px。
.annotation {
display: inline-block;
zoom: 1;
*display: inline;
height: 27px; /* +2px for border */
line-height: 27px;
}
答案 2 :(得分:0)
试试这个:
annotation {
position:realtive;
top: -5px; /*adjust to value that visually centers your text*/
}
为你的日历做同样的事。