css渣渣,有错请指正。1.parent{高度:400px;背景:青色;行高:400px;}.child{宽度:100px;高度:100px;背景:黑色;显示:内联块;vertical-align:middle;}父元素设置line-height和height相同,让基线居中,然后子元素设置vertical-align:middle,让元素的基线重合父元素的基线实现垂直居中。2.parent{高度:400px;位置:相对;背景:青色;}.child{位置:绝对;宽度:100px;高度:100px;背景:黑色;顶部:50%;边距顶部:-50px;/*(height+padding)/2*/}用top和left偏移父对象50%的宽高,然后需要用margin偏移50%的中心块宽高。注意边距值的设置不能使用百分比,因为边距是根据父元素的宽度计算的。2.5.parent{高度:400px;位置:相对;背景:青色;}.child{位置:绝对;宽度:100px;高度:100px;背景:黑色;顶部:50%;变换:翻译Y(-50%);}原理和上面的例子一样,这里是用transform做反向偏移。3.parent{高度:400px;背景:青色;显示:表格单元格;vertical-align:middle;}.child{width:100px;高度:100px;background:black;}table-cell会被其他一些css属性用于破坏,比如float,position:absolute,可以考虑加一个parentdiv定义float等属性,不响应margin值并响应填充属性。4.parent{高度:400px;背景:青色;显示:弹性;对齐项目:中心;}.child{宽度:100px;高度:100px;background:black;}此方法仅在现代浏览器、IE10+、chrome、Safari、Firefox上有效。5.parent{位置:相对;宽度:100%;高度:400px;背景:青色;}.child{位置:绝对;保证金:自动;顶部:0;底部:0;左:0;右:0;宽度:100px;高度:100px;background:black;}当绝对定位元素的相反定位方向属性有特定的定位值时,就会出现流体特性。margin:auto对于具有fluid属性的绝对定位元素的填充规则和普通的fluid元素是完全一样的:如果一侧固定,则一侧为auto,auto为剩余空间的大小。如果两边都是auto,剩余的空间平分
