Html 高度可变的垂直居中和绝对div
我有一个绝对定位的孩子在一个相对定位的父母里面。子对象应该垂直居中显示在父对象旁边。请参阅此JSFIDLE: 问题是父母和孩子的身高在设计时都是未知的,所以我尝试使用负边际法的百分比,但结果完全是疯狂的,我无法找出我的代码出了什么问题 HTML: 然后,子对象显示在父对象顶部的某个位置,即使代码看起来会垂直居中。在小提琴中,-50%的余量计算为-112px。WTF 如果你知道发生了什么,请帮帮我。我已经挣扎了几个小时。百分比总是相对于包含块的宽度,所以这不会像您预期的那样工作 如果您有其他选择,我建议您使用:Html 高度可变的垂直居中和绝对div,html,css,centering,Html,Css,Centering,我有一个绝对定位的孩子在一个相对定位的父母里面。子对象应该垂直居中显示在父对象旁边。请参阅此JSFIDLE: 问题是父母和孩子的身高在设计时都是未知的,所以我尝试使用负边际法的百分比,但结果完全是疯狂的,我无法找出我的代码出了什么问题 HTML: 然后,子对象显示在父对象顶部的某个位置,即使代码看起来会垂直居中。在小提琴中,-50%的余量计算为-112px。WTF 如果你知道发生了什么,请帮帮我。我已经挣扎了几个小时。百分比总是相对于包含块的宽度,所以这不会像您预期的那样工作 如果您有其他选择,
.parent {
position: relative;
}
.child {
-o-transform: translateY(-50%);
-webkit-transform: translateY(-50%);
-moz-transform: translateY(-50%);
-ms-transform: translateY(-50%);
transform: translateY(-50%);
position: absolute;
right: 100%;
top: 50%;
}
(除IE8外,这一点得到了很好的支持)百分比始终与包含块的宽度相关,因此这不会像您预期的那样工作
如果您有其他选择,我建议您使用:
.parent {
position: relative;
}
.child {
-o-transform: translateY(-50%);
-webkit-transform: translateY(-50%);
-moz-transform: translateY(-50%);
-ms-transform: translateY(-50%);
transform: translateY(-50%);
position: absolute;
right: 100%;
top: 50%;
}
(除IE8外,这一点得到了很好的支持)百分比始终与包含块的宽度相关,因此这不会像您预期的那样工作
如果您有其他选择,我建议您使用:
.parent {
position: relative;
}
.child {
-o-transform: translateY(-50%);
-webkit-transform: translateY(-50%);
-moz-transform: translateY(-50%);
-ms-transform: translateY(-50%);
transform: translateY(-50%);
position: absolute;
right: 100%;
top: 50%;
}
(除IE8外,这一点得到了很好的支持)百分比始终与包含块的宽度相关,因此这不会像您预期的那样工作
如果您有其他选择,我建议您使用:
.parent {
position: relative;
}
.child {
-o-transform: translateY(-50%);
-webkit-transform: translateY(-50%);
-moz-transform: translateY(-50%);
-ms-transform: translateY(-50%);
transform: translateY(-50%);
position: absolute;
right: 100%;
top: 50%;
}
(除IE8外,此功能支持得相当好)1+Nice。。我以前从未见过这种方法。1+很好。。我以前从未见过这种方法。1+很好。。我以前从未见过这种方法。1+很好。。我以前从未见过这种方法。在
.child
中,删除页边距顶部
和顶部
位置或设置为自动。请参阅此小提琴:作为替代,如果不需要绝对定位,您可能还需要在<代码>中考虑。子< /代码>删除<代码>边缘顶部<代码>和<代码>顶部<代码>位置或设置为Auto.请参阅此小提琴:作为替代,如果不需要绝对定位,您可能还需要在<代码>中考虑。子< /代码>删除<代码>边缘顶部<代码>和<代码>顶部<代码>位置或设置为Auto.请参阅此小提琴:作为替代,如果不需要绝对定位,您可能还需要在<代码>中考虑。子< /代码>删除<代码>边缘顶部<代码>和<代码>顶部<代码>位置或设置为Auto.看到这个小提琴:作为另一种选择,如果绝对定位不是必需的,你也可能需要考虑。