CSS设置div中的input标签在垂直方向居中,在IE浏览器中显示

<divclass="search"style="font-size:12px;text-align:center;vertical-align:middle;"><in... <div class="search" style="font-size: 12px;text-align: center;vertical-align: middle;">
<input type="text" name="q" class="searcht" style="background-image: url('images/4.jpg');font-size: 18px;"/>
<input type="submit" class="searchb" value="搜索"/>
</div>

为什么这样设置之后div中的两个标签在垂直方向不居中呢,
发现标签更靠近顶部

我开始设了第二个标签的行高,第一个标签的位置往下移动了,但是那个submit还是紧靠顶端,而且让我困惑的是为什么设置第二个标签的height会影响到第一个标签在垂直方向的位置呢,求大神指教,如表述有问题,可QQ:907600323;急急急急急急!!!!
展开
 我来答
摩惠然0iD
推荐于2016-01-23 · TA获得超过1634个赞
知道小有建树答主
回答量:1162
采纳率:100%
帮助的人:837万
展开全部

A设置了vertical-align: middle意味着当前元素需要一个参照物B,相对于这个B来确定是居上居下或者居中,你不是已经看到了么?AB是同辈元素,且必须inline-bock元素。根据这些规则可以确定一个通用写法:

<div class="search" style="font-size: 12px;text-align: center;height:30px">
<input type="text" name="q" class="searcht" style="background-image: url('images/4.jpg');font-size: 18px;vertical-align:middle;"/><input type="submit" class="searchb" style='vertical-align:middle;' value="搜索"/><i style='vertical-align:middle;display:inline-block;height:100%;width:0;overflow:hidden'></i>
</div>
追问
帅哥能简单解释一下父元素基线的问题吗,好比div的基线在哪,因为看到有人说设置元素的line-height和他的高度相同,这个元素就能垂直居中显示,而我理解的line-height就是行间距,这和垂直居中显示有什么关系
不会游泳的鱼2018
2013-04-02 · TA获得超过174个赞
知道答主
回答量:160
采纳率:0%
帮助的人:61.6万
展开全部
css样式中的vertical-align:middle;属性只适用于内联元素。同时浏览器对其支持还存在局限。第一个input可以通过行高来控制垂直居中,第二个input可以通过边距垂直居中
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
人都是练出来的
2013-04-03 · 知道合伙人互联网行家
人都是练出来的
知道合伙人互联网行家
采纳数:770 获赞数:2400
2010毕业于北方学院本二计算机科学与技术专业,毕业后一直从事网络相关工作,对工艺品也有一定涉猎

向TA提问 私信TA
展开全部
div的垂直居中就是个悲剧,建议用表格,或是用js控制一下,纯css不行
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
尐枼芓
2013-04-02 · TA获得超过136个赞
知道小有建树答主
回答量:176
采纳率:0%
帮助的人:105万
展开全部
把input的line-height设置为它的高度试一下呢?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式