Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
CSS垂直对齐稍微偏离_Css_Vertical Alignment - Fatal编程技术网

CSS垂直对齐稍微偏离

CSS垂直对齐稍微偏离,css,vertical-alignment,Css,Vertical Alignment,好吧,这让我抓狂: 图像应该垂直居中于div,但正如您所见,它稍微偏离中心。我不能把它精确地放在中间。任何帮助都将不胜感激。 谢谢。您的代码不起作用。如果同时增加两个高度,则完全不居中: 有关如何解决此问题的更多信息,请参阅Chris Coyier的文章 编辑:删除错误语句。您可以删除垂直对齐属性,该属性无效,因为图像没有可应用的子元素 使用行高:20px可以使用CSS 位置< /C>属性垂直地对准您的图像: div { position:relative; } img {

好吧,这让我抓狂:
图像应该垂直居中于
div
,但正如您所见,它稍微偏离中心。我不能把它精确地放在中间。任何帮助都将不胜感激。

谢谢。

您的代码不起作用。如果同时增加两个高度,则完全不居中:

有关如何解决此问题的更多信息,请参阅Chris Coyier的文章


编辑:删除错误语句。

您可以删除
垂直对齐
属性,该属性无效,因为图像没有可应用的子元素


使用
行高:20pxdiv

上添加
行高:100%
将解决问题


演示

我会去掉div的高度,在顶部和底部使用填充物

html: <div><img src="https://www.google.com/images/srpr/logo3w.png" height="10" /></div>​
css:  div {background-color: blue; padding: 5px 0;}
html:​
css:div{背景色:蓝色;填充:5px 0;}

这将使它在中间对齐。

< P>可以使用CSS <代码>位置< /C>属性垂直地对准您的图像:

div { 
    position:relative;
}

img {
    position:absolute;
    top:0;
    bottom:0;
    margin:auto;
}
JS小提琴:

“垂直对齐”不仅仅适用于表格。@Rob抱歉,我以为是。我已经把它从答案中删除了,谢谢。我正在看这个。请稍等。这样做的一个缺点是,如果div的
高度发生变化,您还必须改变
行高度。您应该接受JSW189的回答,这是唯一非强制解决方案…+1这确实是最好的解决方案。正确居中,无论父对象的高度如何,都能正常工作。